:root{--bg: #0A0A0A;--lime: #C8FF00;--cobalt: #5C5CFF;--pink: #FF6B9D;--amber: #FFB347;--white: #F0F0F0;--muted: rgba(240, 240, 240, .4);--bw: 3px;--font-display: "Barlow Condensed", sans-serif;--font-mono: "JetBrains Mono", monospace}#mode-select{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;background:#000;display:flex;align-items:center;justify-content:center;transition:opacity .5s ease,visibility .5s}#mode-select.done{opacity:0;visibility:hidden;pointer-events:none}.mode-select-inner{display:flex;flex-direction:column;align-items:center;gap:28px;max-width:460px;padding:0 24px}.mode-select-logo{font-family:var(--font-display);font-weight:900;font-size:clamp(32px,5vw,56px);letter-spacing:.08em;color:var(--lime)}.mode-select-subtitle{font-family:var(--font-mono);font-size:11px;letter-spacing:.22em;color:#c8ff0080;text-transform:uppercase}.mode-select-buttons{display:flex;gap:16px;width:100%}.mode-btn{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;padding:24px 16px;background:#c8ff000a;border:1px solid rgba(200,255,0,.15);color:var(--white);cursor:pointer;transition:border-color .2s,background .2s}.mode-btn:hover{border-color:var(--lime);background:#c8ff0014}.mode-btn-label{font-family:var(--font-display);font-weight:900;font-size:clamp(20px,3vw,28px);letter-spacing:.06em;color:var(--lime)}.mode-btn-desc{font-family:var(--font-mono);font-size:9px;letter-spacing:.16em;color:var(--muted);text-transform:uppercase}.mode-btn-tag{font-family:var(--font-mono);font-size:8px;letter-spacing:.2em;text-transform:uppercase;padding:3px 8px;border:1px solid rgba(200,255,0,.2);color:#c8ff0080}.mode-btn-splat .mode-btn-tag{border-color:#ff6b9d4d;color:var(--pink)}.mode-btn-lite .mode-btn-tag{border-color:#c8ff004d;color:var(--lime)}.mode-select-disclaimer{font-family:var(--font-mono);font-size:9px;line-height:1.6;letter-spacing:.12em;color:#f0f0f040;text-align:center;text-transform:uppercase}#lite-bg{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;background:#0a0a0a;overflow:hidden}#lite-bg .lite-bg-layer{position:absolute;top:-4%;right:-4%;bottom:-4%;left:-4%;width:108%;height:108%;background-size:cover;background-position:center;background-repeat:no-repeat;transition:opacity .9s ease;opacity:0;will-change:transform}#lite-bg .lite-bg-layer.active{opacity:1}#loading-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:#000;display:flex;align-items:center;justify-content:center;transition:opacity .6s ease,visibility .6s}#loading-screen.done{opacity:0;visibility:hidden;pointer-events:none}.loading-inner{display:flex;flex-direction:column;align-items:center;gap:20px}.loading-logo{font-family:var(--font-display);font-weight:900;font-size:clamp(28px,4vw,48px);letter-spacing:.08em;color:var(--lime)}.loading-bar-track{width:clamp(200px,30vw,320px);height:2px;background:#c8ff001f}.loading-bar-fill{height:100%;width:0%;background:var(--lime);transition:width .3s ease}.loading-status{font-family:var(--font-mono);font-size:11px;letter-spacing:.18em;color:#c8ff0080;text-transform:uppercase}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-mono);background:#000;color:var(--white);overflow-x:hidden;cursor:crosshair;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#splat-canvas{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:0}.canvas-vignette{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse 55% 55% at 50% 45%,transparent 0%,rgba(0,0,0,.4) 50%,rgba(0,0,0,.85) 75%,#000 100%)}.noise{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none;opacity:.045;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)'/%3E%3C/svg%3E")}#app{position:relative;z-index:1}main{position:relative;z-index:1}.frame-corner{position:fixed;z-index:60;pointer-events:none;width:48px;height:48px}.frame-corner:before,.frame-corner:after{content:"";position:absolute;background:var(--lime)}.frame-corner:before{width:100%;height:2px;top:22px;left:0}.frame-corner:after{width:2px;height:100%;left:22px;top:0}.fc-tl{top:10px;left:10px}.fc-tr{top:10px;right:10px;transform:scaleX(-1)}.fc-bl{bottom:10px;left:10px;transform:scaleY(-1)}.fc-br{bottom:10px;right:10px;transform:scale(-1)}.frame-top{position:fixed;top:0;left:0;right:0;z-index:100;height:56px;display:flex;align-items:center;justify-content:space-between;padding:0 52px;border-bottom:1px solid rgba(200,255,0,.18);background:#000000f7}.frame-top-coords{display:flex;gap:40px;font-size:10px;letter-spacing:.18em;color:#c8ff008c}.frame-top-logo{font-family:var(--font-display);font-weight:900;font-size:19px;letter-spacing:.08em;color:var(--lime)}.frame-top-right{display:flex;align-items:center;gap:24px}.nav-links{display:flex;gap:18px;list-style:none;align-items:center}.nav-links a{font-family:var(--font-display);font-weight:700;font-size:clamp(14px,1.6vw,20px);letter-spacing:.08em;color:#f0f0f059;text-decoration:none;text-transform:uppercase;transition:color .15s;line-height:1;cursor:pointer}.nav-links a:hover{color:var(--lime)}.nav-status{display:flex;align-items:center;gap:7px;font-size:10px;letter-spacing:.12em;color:#c8ff0073}.status-dot{width:5px;height:5px;background:var(--lime);box-shadow:0 0 6px var(--lime),0 0 12px #c8ff004d;animation:blink 2.4s ease-in-out infinite}@keyframes statusBlink{0%,to{opacity:1}50%{opacity:.2}}.frame-bottom{position:fixed;bottom:0;left:0;right:0;z-index:60;height:36px;display:flex;align-items:center;justify-content:space-between;padding:0 52px;border-top:2px solid rgba(200,255,0,.18);background:#000000f7;pointer-events:none}.frame-bottom:before{content:"";position:absolute;top:-6px;left:0;right:0;height:4px;background:repeating-linear-gradient(-45deg,var(--lime) 0px,var(--lime) 3px,transparent 3px,transparent 6px);opacity:.15}.frame-bottom-left{display:flex;align-items:center;gap:18px;font-size:11px;letter-spacing:.14em;color:#c8ff0066}.barcode{display:flex;gap:1.5px;align-items:center}.barcode span{display:block;background:#c8ff0080;height:14px}.frame-bottom-mid{font-size:12px;letter-spacing:.2em;color:#c8ff004d}.frame-bottom-right{font-size:11px;letter-spacing:.14em;color:#c8ff0066;display:flex;align-items:center;gap:14px}#progress-bar{position:fixed;top:44px;left:0;height:2px;background:var(--lime);z-index:200;width:0%;transition:width .08s linear;box-shadow:0 0 6px var(--lime)}.xhair-v{position:fixed;top:0;bottom:0;width:1px;background:#c8ff001f;pointer-events:none;z-index:40}.xhair-h{position:fixed;left:0;right:0;height:1px;background:#c8ff001f;pointer-events:none;z-index:40}.scene-indicator{position:fixed;right:20px;top:50%;transform:translateY(-50%);z-index:50;display:flex;flex-direction:column;gap:8px;pointer-events:none}.scene-dot{width:4px;height:4px;background:#c8ff0038;transition:all .3s ease}.scene-dot.active{background:var(--lime);box-shadow:0 0 6px var(--lime);height:18px}.hud-readout{position:fixed;bottom:44px;left:52px;z-index:50;pointer-events:none;font-size:11px;line-height:2;color:#c8ff004d;letter-spacing:.1em}.hud-readout span{color:#c8ff008c}.hud-panel{clip-path:inset(0 100% 100% 0);transition:clip-path .38s cubic-bezier(.16,1,.3,1);position:relative;overflow:visible}.hud-panel.panel-open{clip-path:inset(0 0% 0% 0)}.scan-line{position:absolute;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent 0%,var(--lime) 30%,var(--lime) 70%,transparent 100%);top:0;pointer-events:none;z-index:10;opacity:0}.hud-panel.panel-open .scan-line{animation:scanDown .46s cubic-bezier(.4,0,.2,1) 60ms forwards}.hud-panel:not(.panel-open) .scan-line{animation:none}@keyframes scanDown{0%{top:0%;opacity:1}85%{top:97%;opacity:.8}to{top:100%;opacity:0}}.corner-mark{position:absolute;width:32px;height:32px;pointer-events:none;z-index:2;opacity:0;transition:opacity .2s ease .24s}.hud-panel.panel-open .corner-mark{opacity:1}.hud-panel:not(.panel-open) .corner-mark{opacity:0;transition-delay:0ms}.cm-tl{top:-5px;left:-5px;border-top:3px solid var(--lime);border-left:3px solid var(--lime)}.cm-br{bottom:-5px;right:-5px;border-bottom:3px solid var(--lime);border-right:3px solid var(--lime)}.panel-content{opacity:0;transform:translateY(8px);transition:opacity .28s ease,transform .28s ease}.hud-panel.panel-open .panel-content{opacity:1;transform:translateY(0);transition-delay:.3s}.hud-panel.panel-open .panel-content.pc-delay-1{transition-delay:.36s}.hud-panel.panel-open .panel-content.pc-delay-2{transition-delay:.43s}.hud-panel.panel-open .panel-content.pc-delay-3{transition-delay:.5s}.hud-panel:not(.panel-open) .panel-content{opacity:0;transform:translateY(5px);transition-delay:0ms}.hud-card{position:relative;--accent: var(--lime);--accent-text: var(--bg);border:var(--bw) solid var(--accent);display:grid;clip-path:polygon(0 0,calc(100% - 28px) 0,100% 28px,100% 100%,28px 100%,0 calc(100% - 28px));background:transparent}.hud-card:before{content:"";position:absolute;bottom:-20px;right:-10px;width:120px;height:40px;background-image:radial-gradient(circle,var(--lime) 1px,transparent 1px);background-size:6px 6px;opacity:.18;pointer-events:none;z-index:3;mask-image:linear-gradient(135deg,transparent 20%,black 50%,transparent 80%);-webkit-mask-image:linear-gradient(135deg,transparent 20%,black 50%,transparent 80%)}.hud-card:after{content:"";position:absolute;top:-15px;left:-8px;width:80px;height:30px;background-image:radial-gradient(circle,var(--lime) 1px,transparent 1px);background-size:8px 8px;opacity:.12;pointer-events:none;z-index:3;mask-image:linear-gradient(315deg,transparent 30%,black 60%,transparent 90%);-webkit-mask-image:linear-gradient(315deg,transparent 30%,black 60%,transparent 90%)}.mc-about{grid-template-areas:"sys    acc     acc     portrait" "code   body    body    portrait" "icon   sysm    sysm    portrait" "name   name    name    name" "foot   foot    foot    foot";grid-template-columns:120px 1fr 1fr 240px;grid-template-rows:50px auto 48px auto auto}.mc-project{grid-template-areas:"sys    acc    acc    meta" "code   body   body   readout" "icon   sysm   hero   hero" "name   name   name   name" "foot   foot   foot   foot";grid-template-columns:120px 1fr 1fr 210px;grid-template-rows:50px 190px 52px auto auto}.mc-contact{grid-template-areas:"sys    acc    acc    meta" "code   links  links  readout" "icon   sysm   sysm   sysm" "name   name   name   name" "foot   foot   foot   foot";grid-template-columns:120px 1fr 1fr 180px;grid-template-rows:50px auto 48px auto auto}.mc-landing{grid-template-areas:"sys   acc   acc   meta" "code  body  body  readout" "icon  sysm  sysm  sysm" "name  name  name  name" "foot  foot  foot  foot";grid-template-columns:120px 1fr 1fr 180px;grid-template-rows:50px 160px 48px auto auto}.mc-career{grid-template-areas:"sys    acc       acc      meta" "code   timeline  timeline readout" "icon   sysm      sysm     sysm" "name   name      name     name" "foot   foot      foot     foot";grid-template-columns:120px 1fr 1fr 210px;grid-template-rows:50px auto 48px auto auto}.mc-skills{grid-template-areas:"sys    acc    acc    meta" "code   body   body   readout" "icon   sysm   sysm   sysm" "name   name   name   name" "foot   foot   foot   foot";grid-template-columns:120px 1fr 1fr 210px;grid-template-rows:50px auto 48px auto auto}.mc-projects-grid{grid-template-areas:"sys    acc    acc    acc" "code   grid   grid   grid" "icon   grid   grid   grid" "name   name   name   name" "foot   foot   foot   foot";grid-template-columns:120px 1fr 1fr 1fr;grid-template-rows:50px 1fr 1fr auto auto}.mc-cell{position:relative;overflow:hidden;border-right:1px solid rgba(255,255,255,.07);border-bottom:1px solid rgba(255,255,255,.07)}.mc-cell:last-child{border-right:none}.mc-fill{background:var(--accent)}.mc-dark{background:#0505058c;backdrop-filter:blur(18px) saturate(1.2) brightness(.35);-webkit-backdrop-filter:blur(18px) saturate(1.2) brightness(.35)}.mc-mid{background:#16161a73;backdrop-filter:blur(14px) saturate(1.1) brightness(.4);-webkit-backdrop-filter:blur(14px) saturate(1.1) brightness(.4)}.mc-void{background:#000}.mc-mid:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(-45deg,transparent 0px,transparent 12px,rgba(200,255,0,.03) 12px,rgba(200,255,0,.03) 13px);pointer-events:none}.mc-area-sys{grid-area:sys}.mc-area-acc{grid-area:acc}.mc-area-meta{grid-area:meta}.mc-area-code{grid-area:code}.mc-area-body{grid-area:body;padding:22px 26px}.mc-area-readout{grid-area:readout}.mc-area-icon{grid-area:icon}.mc-area-sysm{grid-area:sysm}.mc-area-hero{grid-area:hero}.mc-area-portrait{grid-area:portrait}.mc-area-links{grid-area:links;padding:22px 26px}.mc-area-name{grid-area:name}.mc-area-foot{grid-area:foot}.mc-area-timeline{grid-area:timeline;padding:22px 26px;overflow-y:auto}.mc-area-grid{grid-area:grid;padding:0;overflow:visible}.mc-sys{display:flex;flex-direction:column;justify-content:space-between;padding:10px 12px}.mc-sys-text{font-size:11px;font-weight:700;letter-spacing:.2em;color:var(--accent);text-transform:uppercase}.mc-sq{font-size:13px;color:var(--accent);opacity:.65;line-height:1}.mc-area-acc.mc-fill{display:flex;align-items:flex-start;padding:10px 14px;gap:14px}.mc-acc-idx{font-family:var(--font-display);font-weight:900;font-size:28px;color:#0a0a0a40;line-height:1;flex-shrink:0}.mc-acc-badge{font-size:11px;letter-spacing:.12em;color:#0a0a0a99;line-height:1.6}.mc-xmark{position:absolute;width:18px;height:18px;pointer-events:none}.mc-xmark:before,.mc-xmark:after{content:"";position:absolute;background:#c8ff0059}.mc-xmark:before{width:100%;height:1px;top:50%;transform:translateY(-50%)}.mc-xmark:after{height:100%;width:1px;left:50%;transform:translate(-50%)}.xm-tl{top:8px;left:8px}.xm-tr{top:8px;right:8px}.xm-bl{bottom:8px;left:8px}.xm-br{bottom:8px;right:8px}.xm-c{top:50%;left:50%;transform:translate(-50%,-50%)}.mc-code{padding:10px 12px;overflow:hidden}.mc-code-text{font-size:9px;line-height:1.65;letter-spacing:.04em;color:#c8ff001f;white-space:pre;pointer-events:none}.mc-readout{padding:10px 12px;overflow:hidden}.mc-readout-text{font-size:9px;line-height:1.7;letter-spacing:.06em;color:#c8ff001f;pointer-events:none}.mc-meta{display:flex;flex-direction:column;justify-content:space-between;padding:10px 12px}.mc-meta-top{font-size:10px;letter-spacing:.16em;color:#f0f0f04d}.mc-meta-bot{font-size:10px;letter-spacing:.12em;color:var(--accent);opacity:.6}.mc-icon{display:flex;flex-direction:column;justify-content:space-between;padding:10px 12px}.mc-icon-glyph{font-size:22px;color:#0a0a0abf;line-height:1}.mc-icon-label{font-size:9px;letter-spacing:.14em;color:#0a0a0a8c;line-height:1.5}.mc-hazard{background:repeating-linear-gradient(-45deg,var(--accent) 0px,var(--accent) 8px,rgba(10,10,10,.94) 8px,rgba(10,10,10,.94) 16px);opacity:.65}.mc-hero-inner{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:16px}.mc-hero-glyph{font-size:36px;opacity:.15}.mc-hero-label{font-size:10px;letter-spacing:.16em;color:#f0f0f02e;text-align:center}.mc-name-strip{background:var(--accent);padding:18px 24px 14px;display:flex;align-items:flex-end;position:relative}.mc-name-strip:after{content:"";position:absolute;bottom:-8px;left:0;right:0;height:8px;background-image:radial-gradient(circle,var(--lime) 1px,transparent 1px);background-size:4px 4px;opacity:.4;pointer-events:none;mask-image:linear-gradient(to bottom,black 0%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,black 0%,transparent 100%)}.mc-name-strip h2{color:var(--bg)!important;font-size:clamp(52px,7vw,110px);line-height:.86;letter-spacing:-.02em;font-style:italic}.mc-footer-row{background:#05050599;backdrop-filter:blur(18px) brightness(.3);-webkit-backdrop-filter:blur(18px) brightness(.3);border-top:1px solid rgba(255,255,255,.07);padding:10px 24px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;position:relative}.mc-footer-row:before{content:"";position:absolute;top:0;left:0;width:60px;height:100%;background:repeating-linear-gradient(-45deg,var(--accent) 0px,var(--accent) 4px,transparent 4px,transparent 8px);opacity:.2;pointer-events:none}.mc-footer-item{font-size:11px;letter-spacing:.14em;color:#f0f0f059;text-transform:uppercase}.mc-footer-item.accent{color:var(--accent);opacity:.75}.mc-body-content{display:flex;flex-direction:column;height:100%}.project-body{font-size:clamp(13px,1.4vw,15px);line-height:1.82;color:var(--muted);letter-spacing:.03em;margin-bottom:16px;text-shadow:0 0 20px rgba(0,0,0,.8)}.deliverables-label{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin-bottom:8px;opacity:.8}.deliverable{display:flex;align-items:baseline;gap:9px;font-size:clamp(12px,1.3vw,14px);color:#f0f0f073;margin-bottom:5px;letter-spacing:.03em}.deliverable:before{content:"[>]";font-size:10px;color:var(--accent);flex-shrink:0;letter-spacing:0;opacity:.7}.tech-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:14px}.tech-tag{font-size:11px;padding:2px 7px;border:1px solid rgba(200,255,0,.15);color:#c8ff0059;text-transform:uppercase;letter-spacing:.1em}.body-copy{font-size:clamp(13px,1.4vw,15px);line-height:1.85;color:#f0f0f0d1;letter-spacing:.04em;text-shadow:0 0 20px rgba(0,0,0,.8)}.body-copy strong,.skill-item strong,.expand-tab-content strong{color:var(--white);font-weight:600}.tag-row{display:flex;flex-wrap:wrap;gap:6px}.tag-pill{font-size:11px;padding:4px 10px;border:1px solid rgba(200,255,0,.28);color:var(--lime);letter-spacing:.1em;text-transform:uppercase}.tag-pill.cobalt{border-color:#c8ff0047;color:var(--lime)}.bio-portrait-img{width:100%;height:100%;object-fit:cover;object-position:center top;display:block;filter:grayscale(.15) contrast(1.05);opacity:.92}.mc-about .mc-area-body{background:#050505f2;backdrop-filter:none;-webkit-backdrop-filter:none}section{height:100vh;display:flex;align-items:center;padding:80px 48px 60px;position:relative;overflow:hidden;box-sizing:border-box}#s-about{align-items:center}#s-about .mc-wrap{width:100%;max-width:1100px;margin:0 auto}.project-section{justify-content:flex-start;align-items:center}.project-section .mc-wrap{width:100%;max-width:1000px}#s-contact{justify-content:center;align-items:center}#s-contact .mc-wrap{width:100%;max-width:900px}#s-landing{align-items:flex-start;padding-bottom:0}#s-landing>.hud-panel{position:absolute;bottom:80px;left:48px;width:calc(100% - 96px);max-width:1100px}.mc-landing .mc-name-strip h1{font-family:var(--font-display);font-weight:900;font-size:clamp(88px,12vw,168px);line-height:.82;letter-spacing:-.03em;text-transform:uppercase;color:var(--bg);font-style:italic}.landing-descriptor{font-size:clamp(16px,1.8vw,22px);letter-spacing:.12em;color:#f0f0f0bf;line-height:1.8;text-shadow:0 0 16px rgba(0,0,0,.9);font-weight:500}.scroll-cta{font-size:12px;letter-spacing:.22em;color:#c8ff0080;display:flex;align-items:center;gap:12px;animation:ctaDrift 2.8s ease-in-out infinite;margin-top:14px}.scroll-cta:before{content:"";width:24px;height:1px;background:#c8ff0059}@keyframes ctaDrift{0%,to{opacity:.4;transform:translate(0)}50%{opacity:1;transform:translate(5px)}}.scene-meta{position:absolute;top:100px;right:60px;font-size:11px;line-height:2.1;letter-spacing:.16em;color:#c8ff0047;text-align:right;pointer-events:none}h1{font-family:var(--font-display);font-weight:900;font-size:clamp(80px,11vw,148px);line-height:.85;letter-spacing:-.02em;text-transform:uppercase;color:var(--bg)}h2{font-family:var(--font-display);font-weight:900;font-size:clamp(48px,6.5vw,96px);line-height:.88;letter-spacing:-.02em;text-transform:uppercase;color:var(--white)}.accent-g{color:var(--lime)}.accent-c{color:var(--cobalt)}.accent-p{color:var(--pink)}.accent-a{color:var(--amber)}#s-skills .content{width:100%;max-width:1200px;margin:0 auto}.section-header-bar{background:var(--lime);display:inline-flex;align-items:center;gap:14px;padding:7px 18px}.section-header-bar .sys-label{color:var(--bg)}.section-header-bar .sys-label:after{color:#0a0a0a66}.section-big-title{font-family:var(--font-display);font-weight:900;font-size:clamp(52px,7vw,96px);line-height:.88;letter-spacing:-.01em;text-transform:uppercase;color:var(--white);display:block;margin-top:4px;margin-bottom:20px}.sys-label{font-size:11px;font-weight:700;letter-spacing:.18em;color:var(--accent, var(--lime));text-transform:uppercase;display:flex;align-items:center;gap:6px}.sys-label:after{content:"■";font-size:9px;opacity:.55}.skills-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:var(--bw) solid var(--lime)}.skill-cell{background:#050505f2;padding:20px 22px;border-right:1px solid rgba(200,255,0,.12);border-bottom:1px solid rgba(200,255,0,.12);transition:background .2s}.skill-cell:hover{background:#c8ff000a}.skill-cell:nth-child(3n){border-right:none}.skill-cell:nth-child(n+4){border-bottom:none}.skill-cat{font-size:10px;letter-spacing:.2em;color:var(--lime);text-transform:uppercase;margin-bottom:6px}.skill-name{font-family:var(--font-display);font-weight:700;font-size:22px;text-transform:uppercase;margin-bottom:4px}.skill-note{font-size:11px;color:#f0f0f047;line-height:1.75;letter-spacing:.04em}.contact-links{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.contact-link{font-size:13px;color:#f0f0f07a;text-decoration:none;border:var(--bw) solid rgba(200,255,0,.2);padding:9px 18px;display:flex;align-items:center;gap:8px;letter-spacing:.14em;text-transform:uppercase;transition:color .15s,border-color .15s,background .15s;clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,12px 100%,0 calc(100% - 12px))}.contact-link:hover{color:var(--bg);background:var(--lime);border-color:var(--lime)}.arrow{color:var(--lime)}.contact-link:hover .arrow{color:var(--bg)}.reveal{opacity:0;transform:translateY(14px);transition:opacity .7s ease,transform .7s ease}.reveal.in{opacity:1;transform:translateY(0)}.reveal-delay-1{transition-delay:.12s}.reveal-delay-2{transition-delay:.26s}.hover-expand{cursor:pointer}.hover-detail{display:none}.hover-popover-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:290;background:#000c;opacity:0;transition:opacity .18s ease;pointer-events:none}.hover-popover-backdrop.visible{opacity:1;pointer-events:auto}.hover-popover{position:fixed;z-index:300;top:50%;left:50%;transform:translate(-50%,-50%);width:min(720px,88vw);max-height:min(520px,78vh);overflow-y:auto;scrollbar-width:none;background:#050505;border:3px solid var(--lime);padding:0;box-shadow:0 16px 64px #000000e6,0 0 60px #c8ff001a,inset 0 0 30px #c8ff0005;pointer-events:none;animation:popoverIn .52s cubic-bezier(.16,1,.3,1) forwards;clip-path:polygon(0 0,calc(100% - 20px) 0,100% 20px,100% 100%,20px 100%,0 calc(100% - 20px))}.hover-popover::-webkit-scrollbar{display:none}.hover-popover.visible{pointer-events:auto}.hover-popover.collapsing{animation:popoverOut .4s cubic-bezier(.16,1,.3,1) forwards}@keyframes popoverIn{0%{clip-path:inset(40% 30%);opacity:0;transform:translate(-50%,-50%) scale(.85)}to{clip-path:polygon(0 0,calc(100% - 20px) 0,100% 20px,100% 100%,20px 100%,0 calc(100% - 20px));opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes popoverOut{0%{clip-path:polygon(0 0,calc(100% - 20px) 0,100% 20px,100% 100%,20px 100%,0 calc(100% - 20px));opacity:1;transform:translate(-50%,-50%) scale(1)}to{clip-path:inset(40% 30%);opacity:0;transform:translate(-50%,-50%) scale(.85)}}.hover-popover .scan-line{position:absolute;top:0;left:0;right:0;height:4px;z-index:10;pointer-events:none;background:linear-gradient(90deg,transparent 0%,var(--lime) 30%,var(--lime) 70%,transparent 100%);animation:scanDown .12s linear forwards}.hover-popover-title{font-size:12px;font-weight:700;letter-spacing:.18em;color:var(--bg);text-transform:uppercase;margin:0;padding:10px 34px;background:var(--lime);border-bottom:none}.hover-popover-content{font:400 clamp(13px,1.4vw,15px)/1.8 var(--font-mono);color:var(--white);white-space:pre-wrap;padding:20px 34px 28px}.hover-popover-close{position:absolute;top:8px;right:24px;font:700 12px/1 var(--font-mono);letter-spacing:.14em;color:var(--bg);background:#0a0a0a33;border:1px solid rgba(10,10,10,.4);padding:6px 14px;cursor:pointer;z-index:10;transition:background .15s,color .15s}.hover-popover-close:hover{background:var(--bg);color:var(--lime);border-color:var(--bg)}.hover-popover .skill-item,.hover-popover .career-bullet{font-size:clamp(13px,1.4vw,15px);color:#f0f0f0a6;line-height:1.8;padding-left:12px;margin-bottom:4px}.career-entry{display:grid;grid-template-columns:56px 1fr;gap:0 12px;padding:10px 0;border-bottom:1px solid rgba(200,255,0,.08);transition:background .15s,transform .1s}.career-entry:last-child{border-bottom:none}.career-entry:hover{background:#c8ff0008}.career-year{font-size:11px;font-weight:700;letter-spacing:.12em;color:var(--accent);padding-top:2px}.career-header{min-width:0}.career-role{font-size:clamp(12px,1.3vw,14px);font-weight:500;color:var(--white);line-height:1.4;margin-bottom:2px}.career-org{font-size:11px;letter-spacing:.1em;color:var(--muted);text-transform:uppercase}.career-bullet{font-size:11px;color:#f0f0f08c;line-height:1.6;padding-left:8px}.career-bullet:before{content:"> ";color:var(--accent);opacity:.5}.skills-mosaic-body{display:grid;grid-template-columns:1fr 1fr;gap:2px;height:100%}.skill-category{background:#050505cc;padding:16px 18px;border:1px solid rgba(200,255,0,.06);transition:border-color .15s,background .15s;display:flex;flex-direction:column}.skill-category:hover{border-color:#c8ff0040;background:#c8ff0008}.skill-category-title{font-size:14px;font-weight:700;letter-spacing:.14em;color:var(--accent);text-transform:uppercase;margin-bottom:8px}.skill-items-visible{flex:1}.skill-item{font-size:12px;color:#f0f0f080;line-height:1.55;padding-left:8px}.skill-item:before{content:"// ";color:var(--accent);opacity:.35}.project-carousel-wrap{position:relative;height:100%}.project-carousel-viewport{width:100%;height:100%;overflow:hidden}.project-carousel-track{display:flex;flex-wrap:nowrap;height:100%;transition:transform .45s cubic-bezier(.16,1,.3,1)}.project-grid-card{box-sizing:border-box;background:#05050573;backdrop-filter:blur(14px) saturate(1.2) brightness(.35);-webkit-backdrop-filter:blur(14px) saturate(1.2) brightness(.35);border:1px solid rgba(200,255,0,.08);padding:22px 24px;display:flex;flex-direction:column;transition:border-color .15s,background .15s}.project-grid-card:hover{border-color:var(--accent);background:#c8ff000f}.project-grid-title{font-family:var(--font-display);font-weight:700;font-size:clamp(18px,2vw,22px);text-transform:uppercase;margin-bottom:6px;line-height:1.2}.project-grid-client{font-size:11px;letter-spacing:.14em;color:var(--accent);opacity:.7;text-transform:uppercase;margin-bottom:10px}.project-grid-summary{font-size:13px;color:#f0f0f073;line-height:1.6;flex:1}.project-grid-tags{font-size:10px;letter-spacing:.14em;color:#f0f0f040;text-transform:uppercase;margin-top:12px}.carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;background:#0a0a0ad9;border:2px solid rgba(200,255,0,.45);color:var(--lime);font-size:22px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,opacity .15s,border-color .15s;z-index:4}.carousel-prev{left:6px}.carousel-next{right:6px}.carousel-arrow:hover{background:#c8ff0026;border-color:var(--lime)}.carousel-dots{display:flex;justify-content:center;gap:6px;padding:10px 0 4px}.carousel-dot{width:8px;height:8px;border-radius:0;background:#c8ff0026;border:1px solid rgba(200,255,0,.2);cursor:pointer;padding:0;transition:background .15s,box-shadow .15s}.carousel-dot.active{background:var(--lime);box-shadow:0 0 8px #c8ff0066}[data-expandable] .mc-body-content{cursor:pointer}.project-card-compact{display:flex;flex-direction:column;justify-content:center;height:100%;gap:8px}.project-card-role{font-size:clamp(11px,1.2vw,13px);letter-spacing:.16em;text-transform:uppercase;color:var(--accent);opacity:.8}.project-card-client{font-size:clamp(12px,1.3vw,14px);letter-spacing:.1em;color:var(--muted);text-transform:uppercase}.project-card-cta{font-size:11px;letter-spacing:.2em;color:var(--accent);opacity:.35;margin-top:8px;transition:opacity .2s,text-shadow .2s}[data-expandable]:hover .project-card-cta{opacity:1;text-shadow:0 0 8px rgba(200,255,0,.4)}.expand-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000e0;z-index:190;opacity:0;transition:opacity .4s ease;pointer-events:none}.expand-backdrop.visible{opacity:1;pointer-events:auto}.expand-overlay{position:fixed;z-index:200;top:50%;left:50%;transform:translate(-50%,-50%);width:min(800px,92vw);max-height:min(85vh,900px);background:#050505bf;backdrop-filter:blur(20px) saturate(1.3) brightness(.3);-webkit-backdrop-filter:blur(20px) saturate(1.3) brightness(.3);border:3px solid var(--accent);overflow-y:auto;scrollbar-width:none;display:flex;flex-direction:column;animation:expandIn .52s cubic-bezier(.16,1,.3,1) forwards;clip-path:polygon(0 0,calc(100% - 24px) 0,100% 24px,100% 100%,24px 100%,0 calc(100% - 24px))}.expand-overlay::-webkit-scrollbar{display:none}.expand-overlay.collapsing{animation:expandOut .4s cubic-bezier(.16,1,.3,1) forwards}@keyframes expandIn{0%{clip-path:inset(40% 30%);opacity:0;transform:translate(-50%,-50%) scale(.85)}to{clip-path:polygon(0 0,calc(100% - 24px) 0,100% 24px,100% 100%,24px 100%,0 calc(100% - 24px));opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes expandOut{0%{clip-path:polygon(0 0,calc(100% - 24px) 0,100% 24px,100% 100%,24px 100%,0 calc(100% - 24px));opacity:1;transform:translate(-50%,-50%) scale(1)}to{clip-path:inset(40% 30%);opacity:0;transform:translate(-50%,-50%) scale(.85)}}.expand-overlay .scan-line{position:absolute;top:0;left:0;right:0;height:4px;z-index:10;pointer-events:none;background:linear-gradient(90deg,transparent 0%,var(--accent) 30%,var(--accent) 70%,transparent 100%);animation:scanDown .12s linear forwards}.expand-close{position:absolute;top:16px;right:28px;font:700 12px/1 var(--font-mono);letter-spacing:.14em;color:var(--accent);background:none;border:1px solid var(--accent);padding:6px 14px;cursor:pointer;z-index:10;transition:background .15s,color .15s}.expand-close:hover{background:var(--accent);color:var(--bg)}.expand-header{padding:20px 24px 14px;border-bottom:3px solid var(--accent);position:relative}.expand-header:before{content:"SYS BOOT ■";position:absolute;top:6px;left:24px;font-size:9px;font-weight:700;letter-spacing:.2em;color:var(--accent);opacity:.4}.expand-title{font-family:var(--font-display);font-weight:900;font-size:clamp(28px,4.5vw,44px);text-transform:uppercase;color:var(--accent);line-height:1;font-style:italic}.expand-subtitle{font-size:clamp(11px,1.4vw,13px);letter-spacing:.14em;color:var(--muted);text-transform:uppercase;margin-top:5px}.expand-meta{font-size:clamp(10px,1.2vw,12px);letter-spacing:.1em;color:#f0f0f059;margin-top:4px}.expand-tabs{display:flex;gap:0;border-bottom:1px solid rgba(255,255,255,.07);padding:0 28px;flex-shrink:0;background:#0f0f0f99;backdrop-filter:blur(10px) brightness(.4);-webkit-backdrop-filter:blur(10px) brightness(.4)}.expand-header[data-sys-glitch]:before{color:var(--pink);opacity:.8;animation:sysGlitch .12s steps(3) 1}.expand-tab{padding:10px 18px;font:700 clamp(10px,1.2vw,12px)/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:color .15s,border-color .15s}.expand-tab:hover{color:var(--white)}.expand-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.expand-tab-content{padding:20px 24px;font:400 clamp(12px,1.4vw,14px)/1.7 var(--font-mono);color:var(--white);white-space:pre-wrap;flex:1;overflow-y:auto;scrollbar-width:none}.expand-tab-content::-webkit-scrollbar{display:none}.expand-tab-content .impl-bullet{padding-left:12px;margin-bottom:4px;color:#f0f0f099}.expand-tab-content .impl-bullet:before{content:"> ";color:var(--accent);opacity:.5}.expand-links{display:flex;gap:8px;flex-wrap:wrap;padding:16px 28px 24px;border-top:1px solid rgba(255,255,255,.07);flex-shrink:0}.expand-link{font-size:12px;color:#f0f0f07a;text-decoration:none;border:2px solid rgba(200,255,0,.2);padding:7px 14px;display:flex;align-items:center;gap:6px;letter-spacing:.12em;text-transform:uppercase;transition:color .15s,border-color .15s,background .15s;clip-path:polygon(0 0,calc(100% - 8px) 0,100% 8px,100% 100%,8px 100%,0 calc(100% - 8px))}.expand-link:hover{color:var(--bg);background:var(--accent);border-color:var(--accent)}.expand-tag{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#f0f0f059;border:1px solid rgba(200,255,0,.15);padding:5px 12px;display:inline-block}.expand-gallery{margin:0 0 12px}.expand-gallery-viewer{position:relative;width:100%;max-height:340px;overflow:hidden;background:#000;border:1px solid rgba(200,255,0,.12)}.expand-gallery-main{width:100%;height:100%;max-height:340px;object-fit:contain;display:block}.gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);width:36px;height:36px;background:#0a0a0ad9;border:1px solid rgba(200,255,0,.4);color:var(--lime);font-size:18px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s;z-index:4}.gallery-prev{left:8px}.gallery-next{right:8px}.gallery-arrow:hover{background:#c8ff0026}.gallery-counter{position:absolute;bottom:8px;right:12px;font:500 11px/1 var(--font-mono);color:#c8ff0099;letter-spacing:.1em}.expand-thumbs{display:flex;gap:4px;margin-top:6px;overflow-x:auto;padding-bottom:4px}.expand-thumbs::-webkit-scrollbar{height:3px}.expand-thumbs::-webkit-scrollbar-thumb{background:#c8ff0033}.expand-thumb{flex:0 0 auto;width:56px;height:42px;object-fit:cover;cursor:pointer;border:1px solid rgba(255,255,255,.08);opacity:.5;transition:opacity .15s,border-color .15s}.expand-thumb.active,.expand-thumb:hover{opacity:1;border-color:var(--lime)}.expand-gallery-embed{width:100%;height:100%;min-height:340px;background:#000}.expand-gallery-embed iframe{width:100%;height:100%;min-height:340px;border:none}.expand-thumb-embed{flex:0 0 auto;width:56px;height:42px;display:flex;align-items:center;justify-content:center;background:#0a0a0acc;border:1px solid rgba(255,255,255,.08);color:var(--lime);font-size:16px;cursor:pointer;opacity:.5;transition:opacity .15s,border-color .15s}.expand-thumb-embed.active,.expand-thumb-embed:hover{opacity:1;border-color:var(--lime)}.expand-video{position:relative;width:100%;padding-bottom:56.25%;margin:0 0 12px;border:1px solid rgba(200,255,0,.12);background:#000}.expand-video iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:none}.typewriter-cursor:after{content:"u2588";animation:cursorBlink .7s step-end infinite;color:var(--accent)}@keyframes cursorBlink{50%{opacity:0}}@keyframes blink{0%,to{opacity:1}50%{opacity:.2}}.expand-xmark{position:absolute;width:16px;height:16px;pointer-events:none;z-index:5}.expand-xmark:before,.expand-xmark:after{content:"";position:absolute;background:#c8ff0040;animation:xmarkPulse 4s ease-in-out infinite}.expand-xmark:before{width:100%;height:1px;top:50%;transform:translateY(-50%)}.expand-xmark:after{height:100%;width:1px;left:50%;transform:translate(-50%)}.ex-tl{top:12px;left:12px}.ex-tr{top:12px;right:36px}.ex-bl{bottom:12px;left:12px}.ex-br{bottom:12px;right:12px}.ex-tr .expand-xmark:before,.ex-tr .expand-xmark:after{animation-delay:1.5s}.ex-bl .expand-xmark:before,.ex-bl .expand-xmark:after{animation-delay:2.5s}.ex-br .expand-xmark:before,.ex-br .expand-xmark:after{animation-delay:3.5s}.expand-readout{position:absolute;bottom:8px;right:36px;font-size:9px;letter-spacing:.12em;color:#c8ff002e;pointer-events:none;z-index:5;font-family:var(--font-mono)}.expand-overlay:before{content:"";position:absolute;bottom:-14px;right:-8px;width:100px;height:30px;background-image:radial-gradient(circle,var(--lime) 1px,transparent 1px);background-size:6px 6px;opacity:.15;pointer-events:none;z-index:5;mask-image:linear-gradient(135deg,transparent 20%,black 50%,transparent 80%);-webkit-mask-image:linear-gradient(135deg,transparent 20%,black 50%,transparent 80%)}.expand-overlay:after{content:"";position:absolute;top:-10px;left:-6px;width:60px;height:24px;background-image:radial-gradient(circle,var(--lime) 1px,transparent 1px);background-size:8px 8px;opacity:.1;pointer-events:none;z-index:5;mask-image:linear-gradient(315deg,transparent 30%,black 60%,transparent 90%);-webkit-mask-image:linear-gradient(315deg,transparent 30%,black 60%,transparent 90%)}.expand-overlay .expand-scan-ambient{position:absolute;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(200,255,0,.3) 30%,rgba(200,255,0,.3) 70%,transparent 100%);top:0;pointer-events:none;z-index:8;opacity:0;animation:expandScanSweep 5s ease-in-out 1.5s infinite}@keyframes expandScanSweep{0%,80%{top:0;opacity:0}82%{top:0;opacity:.5}95%{top:95%;opacity:.2}to{top:100%;opacity:0}}.expand-header:before{animation:sqBlink 2.4s step-end infinite}.expand-hazard{position:absolute;bottom:0;left:0;right:0;height:3px;background:repeating-linear-gradient(-45deg,var(--lime) 0px,var(--lime) 3px,transparent 3px,transparent 6px);opacity:.15;pointer-events:none;z-index:5}.expand-tab{position:relative;overflow:hidden}.expand-tab:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background:var(--accent);transition:width .25s cubic-bezier(.16,1,.3,1)}.expand-tab:hover:after{width:100%}.expand-tab:hover{animation:sysGlitch .2s steps(3) 1}.expand-title{transition:transform .25s cubic-bezier(.16,1,.3,1),letter-spacing .25s ease;transform-origin:left bottom}.expand-header:hover .expand-title{transform:scaleX(1.03);letter-spacing:.01em}.expand-meta{transition:color .2s ease}.expand-header:hover .expand-meta{color:#f0f0f099}.expand-link{position:relative;overflow:hidden}.expand-link:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--accent);transform:translate(-101%);transition:transform .25s cubic-bezier(.16,1,.3,1);z-index:-1}.expand-link:hover:before{transform:translate(0)}.expand-link:hover{box-shadow:-2px 0 #c8ff0026,2px 0 #5c5cff1f}.expand-tag{position:relative;overflow:hidden;transition:color .2s ease,border-color .2s ease}.expand-tag:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--lime);transform:translate(-101%);transition:transform .25s cubic-bezier(.16,1,.3,1);z-index:-1}.expand-tag:hover:before{transform:translate(0)}.expand-tag:hover{color:var(--bg);border-color:var(--lime)}.expand-close:hover{animation:invertFlash .2s ease 1}.expand-tab-content{transition:box-shadow .3s ease}.expand-tab-content:hover{box-shadow:inset 0 0 40px #c8ff0008}.expand-header{transition:border-color .3s ease}.expand-header:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:1px;background:var(--accent);animation:headerGlow 3s ease-in-out infinite}@keyframes headerGlow{0%,to{opacity:.3;box-shadow:0 0 6px #c8ff001a}50%{opacity:.8;box-shadow:0 0 14px #c8ff0040}}.mc-sq{animation:sqBlink 2.4s step-end infinite}.hud-card:nth-child(1) .mc-sq{animation-delay:0s}.hud-card:nth-child(2) .mc-sq{animation-delay:.7s}.hud-card:nth-child(3) .mc-sq{animation-delay:1.4s}@keyframes sqBlink{0%,to{opacity:.65}40%{opacity:.65}42%{opacity:0}55%{opacity:0}57%{opacity:.65}80%{opacity:.65}82%{opacity:.15}88%{opacity:.15}90%{opacity:.65}}.mc-code{overflow:hidden}.mc-code-text{animation:codeScroll 18s linear infinite}@keyframes codeScroll{0%{transform:translateY(0)}to{transform:translateY(-50%)}}.mc-xmark:before,.mc-xmark:after{animation:xmarkPulse 4s ease-in-out infinite}.xm-tr .mc-xmark:before,.xm-tr .mc-xmark:after{animation-delay:1s}.xm-bl .mc-xmark:before,.xm-bl .mc-xmark:after{animation-delay:2s}.xm-br .mc-xmark:before,.xm-br .mc-xmark:after{animation-delay:3s}@keyframes xmarkPulse{0%,to{opacity:1}50%{opacity:.25}}.status-dot{position:relative}.status-dot:after{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border:1px solid var(--lime);border-radius:50%;animation:statusRing 2.4s ease-out infinite}@keyframes statusRing{0%{transform:scale(1);opacity:.6}to{transform:scale(3.5);opacity:0}}.barcode span{animation:barJitter 3s ease-in-out infinite alternate}.barcode span:nth-child(odd){animation-delay:.3s;animation-direction:alternate-reverse}@keyframes barJitter{0%{transform:scaleY(1)}50%{transform:scaleY(.6)}to{transform:scaleY(1.15)}}.hud-panel.panel-open .scan-line{animation:scanDown .46s cubic-bezier(.4,0,.2,1) 60ms forwards,scanSweep 6s ease-in-out 2s infinite}@keyframes scanSweep{0%,85%{top:-2px;opacity:0}86%{top:0%;opacity:.35}93%{top:50%;opacity:.25}to{top:100%;opacity:0}}.scene-meta{animation:metaFlicker 8s step-end infinite}@keyframes metaFlicker{0%,to{opacity:1}72%{opacity:1}73%{opacity:.3}74%{opacity:1}75%{opacity:0}77%{opacity:1}}.hud-card{transition:transform .1s ease}[data-expandable]:hover{animation:glitchJitter .15s ease 1}@keyframes glitchJitter{0%{transform:translate(0)}25%{transform:translate(-2px,1px)}50%{transform:translate(1px,-1px)}75%{transform:translate(-1px,-1px)}to{transform:translate(0)}}[data-expandable]:hover{box-shadow:-2px 0 #c8ff0026,2px 0 #5c5cff1f,0 0 20px #c8ff000f}[data-expandable]:hover .scan-line{animation:scanDown .3s cubic-bezier(.4,0,.2,1) forwards!important;opacity:.6}.mc-name-strip h2{transition:transform .25s cubic-bezier(.16,1,.3,1),letter-spacing .25s ease;transform-origin:left bottom}.mc-name-strip:hover h2{transform:scaleX(1.03);letter-spacing:.02em}.mc-dark{transition:box-shadow .25s ease,background .25s ease}.mc-dark:hover{box-shadow:inset 0 0 30px #c8ff000d;background:#050505a6}.mc-mid:after{transition:opacity .25s ease;opacity:1}.mc-mid:hover:after{background:repeating-linear-gradient(-45deg,transparent 0px,transparent 12px,rgba(200,255,0,.1) 12px,rgba(200,255,0,.1) 13px)}.mc-code:hover .mc-code-text{color:#c8ff0059;animation-duration:6s}.mc-code-text,.mc-readout-text{transition:color .3s ease}.mc-readout:hover .mc-readout-text{color:#c8ff0059}.mc-sys-text{transition:transform .1s ease}.mc-sys:hover .mc-sys-text{animation:sysGlitch .3s steps(3) 1}@keyframes sysGlitch{0%{transform:translate(0)}20%{transform:translate(-3px);color:var(--pink)}40%{transform:translate(2px)}60%{transform:translate(-1px);color:var(--cobalt)}80%{transform:translate(1px)}to{transform:translate(0)}}.mc-fill{transition:filter .08s ease}.mc-fill:hover{animation:invertFlash .2s ease 1}@keyframes invertFlash{0%{filter:invert(0)}30%{filter:invert(1)}to{filter:invert(0)}}.mc-footer-item{position:relative;transition:color .2s ease}.mc-footer-item:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:1px;background:var(--accent);transition:width .3s cubic-bezier(.16,1,.3,1)}.mc-footer-item:hover:after{width:100%}.mc-footer-item:hover{color:#f0f0f0b3}.nav-links a{transition:color .15s,letter-spacing .2s ease}.nav-links a:hover{color:var(--lime);letter-spacing:.22em}.skill-cell{position:relative;overflow:hidden;transition:background .2s,border-color .2s,box-shadow .2s}.skill-cell:before{content:"";position:absolute;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent 0%,var(--lime) 50%,transparent 100%);top:-2px;opacity:0;transition:none}.skill-cell:hover{box-shadow:inset 0 0 20px #c8ff000a,0 0 8px #c8ff0014}.skill-cell:hover:before{animation:skillScan .4s ease forwards}@keyframes skillScan{0%{top:-2px;opacity:.8}to{top:100%;opacity:0}}.tag-pill,.tech-tag{position:relative;overflow:hidden;transition:color .2s ease,border-color .2s ease}.tag-pill:before,.tech-tag:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--lime);transform:translate(-101%);transition:transform .25s cubic-bezier(.16,1,.3,1);z-index:-1}.tag-pill:hover:before,.tech-tag:hover:before{transform:translate(0)}.tag-pill:hover,.tech-tag:hover{color:var(--bg);border-color:var(--lime)}.contact-link:hover{color:var(--lime);border-color:var(--lime);box-shadow:-2px 0 #c8ff0033,2px 0 #5c5cff26,0 0 16px #c8ff0014}.project-grid-card{position:relative;overflow:hidden}.project-grid-card:before{content:"";position:absolute;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,var(--lime) 50%,transparent 100%);top:-1px;opacity:0;pointer-events:none;z-index:2}.project-grid-card:hover{transform:translateY(-2px)}.project-grid-card:hover:before{animation:skillScan .5s ease forwards}.mc-hero-glyph{animation:glyphSpin 12s linear infinite}@keyframes glyphSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.lightbox-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:500;background:#000000f2;display:flex;align-items:center;justify-content:center;cursor:zoom-out;opacity:0;transition:opacity .3s ease}.lightbox-backdrop.visible{opacity:1}.lightbox-img{max-width:94vw;max-height:90vh;object-fit:contain;cursor:default;box-shadow:0 0 60px #c8ff001a;border:2px solid rgba(200,255,0,.25)}.lightbox-close{position:absolute;top:16px;right:24px;font:700 12px/1 var(--font-mono);letter-spacing:.14em;color:var(--lime);background:#0a0a0acc;border:1px solid rgba(200,255,0,.4);padding:8px 16px;cursor:pointer;z-index:10;transition:background .15s,color .15s}.lightbox-close:hover{background:var(--lime);color:var(--bg)}@media(pointer:coarse){body{cursor:default}.xhair-v,.xhair-h{display:none}}section{padding-left:clamp(12px,4vw,48px);padding-right:clamp(12px,4vw,48px);padding-top:clamp(60px,8vw,80px);padding-bottom:clamp(40px,5vw,60px)}.frame-top{padding:0 clamp(16px,4vw,52px)}.frame-bottom{padding:0 clamp(12px,4vw,52px)}#s-landing>.hud-panel{left:clamp(12px,4vw,48px);bottom:clamp(44px,6vw,80px);width:calc(100% - clamp(24px,8vw,96px))}.mc-landing{grid-template-columns:clamp(60px,15vw,120px) 1fr 1fr clamp(80px,18vw,180px)}.mc-about{grid-template-columns:clamp(60px,15vw,120px) 1fr 1fr clamp(100px,22vw,240px)}.mc-career,.mc-skills,.mc-project{grid-template-columns:clamp(60px,15vw,120px) 1fr 1fr clamp(80px,18vw,210px)}.mc-contact{grid-template-columns:clamp(60px,15vw,120px) 1fr 1fr clamp(80px,18vw,180px)}.mc-projects-grid{grid-template-columns:clamp(60px,15vw,120px) 1fr 1fr 1fr}@media(max-width:32em){.frame-top-coords{display:none}.frame-top-logo{font-size:15px}.nav-links{display:none}.nav-links.open{display:flex;flex-direction:column;position:fixed;top:56px;left:0;right:0;background:#000000f7;border-bottom:2px solid rgba(200,255,0,.18);padding:20px clamp(16px,5vw,40px);gap:18px;z-index:100}.nav-links.open a{font-size:18px;color:#f0f0f099}.nav-hamburger{display:flex;align-items:center;justify-content:center;background:none;border:1px solid rgba(200,255,0,.3);color:var(--lime);font-size:18px;width:36px;height:36px;cursor:pointer;font-family:var(--font-mono);letter-spacing:0}.nav-hamburger:hover{background:#c8ff001a}.nav-status span,.frame-bottom-mid,.barcode{display:none}.frame-bottom{height:28px}.frame-bottom-left,.frame-bottom-right{font-size:9px}.scene-indicator{right:8px}.scene-dot{width:3px;height:3px}.scene-dot.active{height:12px}.hud-readout,.scene-meta,.mc-area-code,.mc-area-readout,.mc-area-icon{display:none}.mc-landing{grid-template-areas:"sys   acc" "body  body" "sysm  sysm" "name  name" "foot  foot";grid-template-columns:auto 1fr;grid-template-rows:40px auto 36px auto auto}.mc-landing .mc-area-meta{display:none}.mc-about{grid-template-areas:"sys      acc" "portrait portrait" "body     body" "sysm     sysm" "name     name" "foot     foot";grid-template-columns:auto 1fr;grid-template-rows:40px clamp(140px,30vw,220px) auto 36px auto auto}.mc-about .mc-area-portrait{grid-area:portrait!important}.mc-about .mc-area-meta{display:none}.bio-portrait-img{max-height:clamp(140px,30vw,220px);object-position:center 20%}.mc-career{grid-template-areas:"sys      acc" "meta     meta" "timeline timeline" "sysm     sysm" "name     name" "foot     foot";grid-template-columns:auto 1fr;grid-template-rows:40px auto 1fr 36px auto auto}.mc-skills{grid-template-areas:"sys   acc" "body  body" "sysm  sysm" "name  name" "foot  foot";grid-template-columns:auto 1fr;grid-template-rows:40px auto 36px auto auto}.mc-skills .mc-area-meta{display:none}.skills-mosaic-body{grid-template-columns:1fr}.mc-project{grid-template-areas:"sys   acc" "body  body" "hero  hero" "sysm  sysm" "name  name" "foot  foot";grid-template-columns:auto 1fr;grid-template-rows:40px auto 44px 36px auto auto}.mc-project .mc-area-meta{display:none}.mc-projects-grid{grid-template-areas:"sys   acc" "grid  grid" "name  name" "foot  foot";grid-template-columns:auto 1fr;grid-template-rows:40px 1fr auto auto}.mc-projects-grid .mc-area-acc{grid-area:acc!important}.mc-contact{grid-template-areas:"sys    acc" "links  links" "sysm   sysm" "name   name" "foot   foot";grid-template-columns:auto 1fr;grid-template-rows:40px auto 36px auto auto}.mc-contact .mc-area-meta{display:none}.hud-card{max-height:calc(100vh - clamp(90px,12vw,140px));overflow-y:auto;scrollbar-width:none}.hud-card::-webkit-scrollbar{display:none}.mc-landing .mc-name-strip h1{font-size:clamp(44px,14vw,88px)}.mc-name-strip h2{font-size:clamp(28px,10vw,52px)}.mc-name-strip{padding:14px clamp(12px,3vw,24px) 10px}.mc-footer-row{padding:8px clamp(10px,3vw,24px)}.mc-footer-item{font-size:clamp(8px,2.5vw,11px)}.mc-area-body,.mc-area-links,.mc-area-timeline{padding:clamp(12px,3vw,22px) clamp(10px,3vw,26px)}.contact-links{flex-direction:column}.contact-link{width:100%;justify-content:center}.project-grid-card{min-width:100%}.expand-overlay{width:min(800px,96vw);max-height:92vh}.expand-header{padding:16px clamp(12px,4vw,24px) 10px}.expand-header:before{left:clamp(12px,4vw,24px)}.expand-tabs{padding:0 clamp(8px,3vw,28px)}.expand-tab{padding:8px clamp(8px,3vw,18px)}.expand-tab-content{padding:clamp(10px,3vw,20px) clamp(12px,4vw,24px)}.expand-links{padding:12px clamp(12px,4vw,28px) 16px}.expand-close{top:10px;right:clamp(10px,3vw,28px)}.hover-popover{width:min(720px,94vw);max-height:82vh}.hover-popover-content{padding:16px clamp(14px,4vw,34px) 20px}.mc-sys{min-width:60px}.mc-area-acc[style]{grid-area:acc!important}.mc-area-body[style]{grid-area:body!important}.mc-area-sysm[style]{grid-area:sysm!important}.mc-area-meta[style]{grid-area:meta!important}}@media(min-width:32.0625em)and (max-width:52em){.frame-top-coords{display:none}.nav-links{gap:12px}.nav-status span{display:none}}.nav-hamburger{display:none}
