@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/cormorant-garamond-latin-500-normal-BsRWmXhO.woff2)format("woff2"),url(/assets/cormorant-garamond-latin-500-normal-zIXX3Q-H.woff)format("woff")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cormorant-garamond-latin-600-normal-Co1r35X9.woff2)format("woff2"),url(/assets/cormorant-garamond-latin-600-normal-2CBVLo0M.woff)format("woff")}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:500;src:url(/assets/cormorant-garamond-latin-500-italic-Y14P-dkT.woff2)format("woff2"),url(/assets/cormorant-garamond-latin-500-italic-DhNIfkTX.woff)format("woff")}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-cyrillic-ext-wght-normal-d45eAU9y.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-cyrillic-wght-normal-BAAhND-U.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-greek-wght-normal-CmyJS8uq.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-vietnamese-wght-normal-Dg1JeJN0.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-latin-ext-wght-normal-CIII54If.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-latin-wght-normal-IvpUvPa2.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color:#f1e3c5;font-synthesis:none;text-rendering:optimizelegibility;--ink:#f1e3c5;--soft:#bfbbb1;--muted:#707687;--faint:#42454e;--line:#eedbb61f;--line-strong:#eedbb63b;--field:#04060a;--panel:#070a13;--accent:#cba861;--accent-bright:#f1e3c5;--accent-rgb:203,168,97;--mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace;--page-x:clamp(24px, 5vw, 88px);background:#04060a;font-family:Inter,Helvetica Neue,Helvetica,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--field)}body{min-width:320px;color:var(--ink);background:var(--field);margin:0;overflow-x:hidden}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent;color:inherit}:focus-visible{outline:1px solid var(--accent-bright);outline-offset:5px}.skip-link{z-index:100;color:#060912;background:var(--accent-bright);padding:9px 12px;position:fixed;top:10px;left:10px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.site-shell{isolation:isolate;background:#04060a;width:100%;position:relative;overflow:clip}.atmospheric-field{z-index:-2;pointer-events:none;position:fixed;inset:0;overflow:hidden}.atmospheric-field:before{content:"";background-image:linear-gradient(rgba(var(--accent-rgb), .018) 1px, transparent 1px), linear-gradient(90deg, rgba(var(--accent-rgb), .018) 1px, transparent 1px);background-size:96px 96px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 82%);mask-image:linear-gradient(#000,#0000 82%)}.atmospheric-field span{aspect-ratio:1;opacity:.16;border-radius:50%;width:min(58vw,920px);transition:transform 1.4s cubic-bezier(.22,.74,.18,1),opacity 1.2s;position:absolute}.atmospheric-field span:first-child{background:radial-gradient(circle, rgba(var(--accent-rgb), .42), transparent 68%);top:-26%;right:-8%}.atmospheric-field span:nth-child(2){background:radial-gradient(circle,#9675324d,#0000 68%);bottom:-42%;left:-18%}.atmospheric-field span:nth-child(3){background:radial-gradient(circle,#f1e3c51a,#0000 72%);width:34vw;top:40%;left:36%}.site-shell[data-chapter-active=minglr] .atmospheric-field span:first-child{opacity:.3;transform:translate(-22vw,34vh)scale(.8)}.site-shell[data-chapter-active=technologies] .atmospheric-field span:nth-child(2){opacity:.28;transform:translate(36vw,-25vh)scale(1.1)}.site-shell[data-chapter-active=contact] .atmospheric-field span:nth-child(3){opacity:.25;transform:translate(25vw,24vh)scale(1.4)}.topbar{z-index:50;height:72px;padding:0 var(--page-x);border-bottom:1px solid var(--line);background:#04060ab8;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.wordmark{cursor:pointer;background:0 0;border:0;align-items:center;gap:14px;padding:9px 0;display:flex}.wordmark-sigil{color:var(--accent-bright);font:650 14px/1 var(--font-label);letter-spacing:-.08em}.wordmark-title{border-left:1px solid var(--line-strong);color:#ada89b;letter-spacing:-.01em;padding-left:14px;font-size:13px}.topbar nav{align-items:center;gap:clamp(14px,1.8vw,29px);display:flex}.topbar nav a{color:#aaa497;padding:5px 0;font-size:12px;text-decoration:none;transition:color .18s;position:relative}.topbar nav a:after{content:"";background:var(--accent);transform-origin:0;height:1px;transition:transform .22s;position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.topbar nav a:hover:after{transform:scaleX(1)}.constellation-stage{z-index:1;opacity:1;height:calc(100svh - 72px);transition:right 1s cubic-bezier(.22,.74,.18,1),opacity .8s,filter .9s;position:fixed;top:72px;left:0;right:0}.constellation-stage.is-passive{pointer-events:none;opacity:.29}.constellation-stage.is-interactive{pointer-events:auto}.site-shell[data-chapter-active=experience] .constellation-stage{opacity:.72;right:52%}.site-shell[data-chapter-active=technologies] .constellation-stage{opacity:.86;right:48%}.site-shell[data-chapter-active=about] .constellation-stage{opacity:.18}.site-shell[data-chapter-active=contact] .constellation-stage{opacity:.36}main{z-index:2;pointer-events:none;position:relative}main a,main button,main input,main article,main .focus-panel{pointer-events:auto}.hero{border-bottom:1px solid var(--line);pointer-events:none;height:calc(100svh - 72px);min-height:660px;position:relative;overflow:hidden}.hero:before{content:"";pointer-events:none;border:1px solid #eedbb612;position:absolute;inset:22px;box-shadow:inset 0 0 80px #0000003d}.hero:after{content:"";pointer-events:none;background:radial-gradient(circle at 72% 48%,#0000 0 23%,#04060a1f 58%,#04060a7a 100%);position:absolute;inset:0}.hero-copy{z-index:5;top:clamp(78px,12vh,130px);left:var(--page-x);width:min(430px,38vw);position:absolute}.eyebrow{color:var(--accent);font:11.5px/1.2 var(--font-label);margin:0 0 22px}.hero h1{letter-spacing:-.065em;margin:0;font-size:clamp(56px,6.2vw,92px);font-weight:520;line-height:.84}.role{color:#eae8e5;align-items:center;gap:10px;margin:27px 0 0;font-size:12px;font-weight:600;display:flex}.role span{background:var(--accent-bright);width:6px;height:6px;box-shadow:0 0 18px rgba(var(--accent-rgb), .9);border-radius:50%}.hero-line{color:#aaa497;max-width:330px;margin:17px 0 0;font-size:14px;line-height:1.55}.graph-readout{z-index:6;left:var(--page-x);min-width:240px;font:11px/1.25 var(--font-label);grid-template-columns:10px 1fr;gap:4px 10px;display:grid;position:absolute;bottom:30px}.readout-marker{border:1px solid var(--accent);width:6px;height:6px;box-shadow:0 0 10px rgba(var(--accent-rgb),.55);border-radius:50%;grid-row:1/3;align-self:center}.graph-readout strong{color:#c6c3ba;font-weight:500}.graph-readout>span:last-child{color:#525663;font-size:10.5px}.hero-scroll{z-index:6;right:var(--page-x);color:#626776;font:10.5px/1 var(--font-label);align-items:center;gap:10px;display:flex;position:absolute;bottom:30px}.hero-scroll span{background:linear-gradient(90deg, transparent, var(--accent));width:42px;height:1px}.force-graph{--graph-scale:1;cursor:grab;touch-action:pan-y;position:absolute;inset:0;overflow:hidden}.force-graph:active{cursor:grabbing}.force-graph.is-passive{cursor:default;pointer-events:none}.force-edges{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.force-edges g,.force-node-layer{transform-origin:0 0}.force-edges line{vector-effect:non-scaling-stroke;stroke:#515561;stroke-width:.65px;opacity:.2;transition:opacity .26s,stroke .26s}.force-edges line.domain-edge{stroke:#434650;opacity:.12;stroke-dasharray:2 7}.force-edges line.is-selected{stroke:var(--accent);stroke-width:1px;opacity:.82}.force-node-layer{will-change:transform;position:absolute;inset:0}.force-node{text-align:left;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;opacity:.82;will-change:transform;pointer-events:none;background:0 0;border:0;align-items:center;gap:9px;min-width:90px;min-height:38px;padding:9px 11px;transition:opacity .22s,filter .22s;display:flex;position:absolute;top:0;left:0}.force-node[data-align=right]{text-align:right;flex-direction:row-reverse}.force-node:active,.force-node.is-dragging{cursor:grabbing}.force-node-marker{pointer-events:auto;cursor:grab;background:#f0e0bf;border-radius:50%;flex:none;width:5px;height:5px;transition:box-shadow .24s,transform .24s,background .24s;position:absolute;top:50%;left:0;transform:translate(-50%,-50%);box-shadow:0 0 4px #f1e3c5,0 0 13px #dbc3928c,0 0 30px #c39a492e}.force-node-copy{pointer-events:none;margin-left:3px}.force-node[data-align=right] .force-node-copy{margin-left:0;margin-right:3px}.force-node-marker:before{content:"";opacity:.5;border:1px solid #ead4a81a;border-radius:50%;position:absolute;inset:-7px}.force-node-copy{transform-origin:0;gap:4px;display:grid}.force-node-name{color:#c5c2b9;white-space:nowrap;text-shadow:0 1px 8px #04060a;font-size:12px;font-weight:500}.force-node-meta{color:#535764;font:10px/1.2 var(--font-label);white-space:nowrap}.force-node.is-project{opacity:1}.force-node.is-project .force-node-marker{width:9px;height:9px;box-shadow:0 0 5px #fff, 0 0 18px 5px #efdebb57, 0 0 54px 14px rgba(var(--accent-rgb), .09);background:#f1e3c5}.force-node.is-project .force-node-marker:after{content:"";border:1px solid #f1e3c538;position:absolute;inset:-7px;transform:rotate(45deg)}.force-node.is-project .force-node-name{color:#f1e3c5;font-size:13px;font-weight:650}.force-node.is-domain{opacity:.42}.force-node.is-domain .force-node-marker{width:3px;height:3px;box-shadow:0 0 18px 8px rgba(var(--accent-rgb), .07);background:#797f90}.force-node:hover,.force-node:focus-visible,.force-node.is-selected,.force-node.is-dragging{z-index:4;opacity:1;filter:brightness(1.2)}.force-node:hover .force-node-marker,.force-node:focus-visible .force-node-marker,.force-node.is-selected .force-node-marker,.force-node.is-dragging .force-node-marker{background:var(--accent-bright);box-shadow:0 0 5px #fff, 0 0 20px 5px rgba(var(--accent-rgb),.7), 0 0 55px 14px rgba(var(--accent-rgb),.18);transform:translate(-50%,-50%)scale(1.3)}.force-node.is-selected .force-node-name{color:#fff}.force-node.is-selected:after{content:"";border:1px solid rgba(var(--accent-rgb),.38);width:38px;height:38px;box-shadow:0 0 28px rgba(var(--accent-rgb),.12);pointer-events:none;border-radius:50%;position:absolute;top:50%;left:1px;transform:translateY(-50%)}.force-node.is-outside{visibility:hidden;opacity:0;pointer-events:none}.force-graph[data-zoom=far] .force-node:not(.is-project):not(.is-core):not(.is-selected) .force-node-copy,.force-graph[data-zoom=far] .force-node.is-domain .force-node-copy{opacity:0}.force-graph[data-zoom=near] .force-node-name{font-size:13px}.simulation-status{z-index:8;right:var(--page-x);color:#505460;font:10.5px/1 var(--font-label);pointer-events:none;gap:12px;display:flex;position:absolute;top:25px}.force-graph[data-simulation=active] .simulation-status span:first-child{color:var(--accent)}.graph-view-controls{z-index:9;right:var(--page-x);align-items:center;gap:9px;display:flex;position:absolute;bottom:48px}.graph-view-controls button{color:#707586;min-width:24px;height:24px;font:11.5px/1 var(--font-label);cursor:pointer;background:#05070d9e;border:1px solid #53411c;padding:0 6px}.graph-view-controls .graph-view-reset{color:#666b7a;width:auto;font-size:10.5px}.graph-view-controls button:hover{color:var(--accent-bright);border-color:var(--accent)}.physics-controls{z-index:12;right:var(--page-x);color:#818595;width:220px;font:10.5px/1.3 var(--font-label);background:#05070df0;border:1px solid #4f3d1a;position:absolute;top:44px}.physics-controls summary{cursor:pointer;padding:7px 9px;list-style:none}.physics-controls summary:before{content:"+ ";color:var(--accent)}.physics-controls[open] summary:before{content:"− "}.physics-controls>div{border-top:1px solid #4f3d1a;gap:8px;padding:9px;display:grid}.physics-controls label{gap:4px;display:grid}.physics-controls label>span{justify-content:space-between;display:flex}.physics-controls input{width:100%;accent-color:var(--accent)}.return-home{z-index:8;top:38px;left:var(--page-x);color:#c6c2b9;font:11px/1.3 var(--font-label);cursor:pointer;background:0 0;border:0;border-bottom:1px solid #896b2e;padding:5px 0;position:absolute}.focus-panel{z-index:7;top:88px;left:var(--page-x);scrollbar-width:thin;scrollbar-color:#3d3f48 transparent;background:linear-gradient(90deg,#04060afa,#04060ade 82%,#0000);width:min(520px,42vw);max-height:calc(100% - 142px);padding:20px 45px 20px 0;position:absolute;overflow-y:auto}.focus-panel:before{content:"";background:linear-gradient(90deg, var(--accent), transparent);opacity:.65;width:100%;height:1px;margin-bottom:15px;display:block}.catalogue{color:var(--accent);font:11px/1.4 var(--font-label);margin:0}.focus-panel h1{letter-spacing:-.06em;margin:12px 0 11px;font-size:clamp(45px,4.8vw,73px);font-weight:520;line-height:.9}.focus-intro{color:#c6c3ba;max-width:370px;margin:0 0 22px;font-size:14px;line-height:1.55}.focus-panel dl{grid-template-columns:95px 1fr;gap:9px 0;margin:0 0 20px;font-size:13px;line-height:1.45;display:grid}.focus-panel dl div{display:contents}.focus-panel dt{color:#626776;font:10.5px/1.2 var(--font-label);padding-top:2px}.focus-panel dd{color:#cecbc4;margin:0}.inline-entities{flex-wrap:wrap;display:flex}.inline-entities button{color:#d4d1ca;cursor:pointer;background:0 0;border:0;padding:0}.inline-entities button:not(:last-child):after{content:" · ";color:#5b5f6c;white-space:pre}.focus-links{gap:16px;margin-bottom:20px;display:flex}.focus-links a{font:11px/1 var(--font-label);border-bottom:1px solid #896b2e;padding-bottom:3px;text-decoration:none}.evidence-list,.focus-domain-grid{border-top:1px solid var(--line);padding-top:13px}.evidence-list>p,.focus-domain-grid p{color:#626776;font:10.5px/1 var(--font-label);margin:0 0 8px}.evidence-list>button{text-align:left;cursor:pointer;background:0 0;border:0;border-top:1px solid #e8e6e214;grid-template-columns:105px 1fr;gap:15px;width:100%;padding:10px 0;display:grid}.evidence-list>button small{color:#767b8d;font-size:11.5px;line-height:1.4}.focus-domain-grid{grid-template-columns:1fr 1fr;gap:28px;display:grid}.focus-domain-grid>div{flex-direction:column;align-items:flex-start;display:flex}.focus-domain-grid button{color:#cecbc4;cursor:pointer;background:0 0;border:0;padding:4px 0;font-size:13px}.graph-toolbar{z-index:8;min-height:72px;padding:13px var(--page-x);border-bottom:1px solid var(--line);color:#797e8f;font:11px/1 var(--font-label);pointer-events:auto;background:#05070de0;justify-content:space-between;align-items:center;gap:30px;display:flex;position:relative}.quick-orbits{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.quick-orbits>span{color:var(--accent);margin-right:7px}.quick-orbits button{color:#b1ab9f;font:inherit;text-transform:inherit;cursor:pointer;background:0 0;border:0;border-left:1px solid #624c21;padding:2px 0 2px 11px}.quick-orbits button:hover{color:var(--accent-bright);border-color:var(--accent)}.universe-search{grid-template-columns:auto minmax(150px,230px);align-items:center;gap:13px;min-width:330px;display:grid;position:relative}.universe-search label{color:#656a79;white-space:nowrap;align-items:center;gap:8px;display:flex}.universe-search kbd{font:inherit;border:1px solid #624c21;padding:2px 5px}.universe-search input{color:#f1e3c5;width:100%;font:11.5px var(--font-label);background:0 0;border:0;border-bottom:1px solid #624c21;border-radius:0;outline:0;padding:7px 0}.universe-search input:focus{border-color:var(--accent)}.search-results{z-index:30;background:#070a12;border:1px solid #53411c;width:230px;position:absolute;top:38px;right:0;box-shadow:0 18px 45px #0000006b}.search-results button{text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #3a2d13;justify-content:space-between;align-items:center;width:100%;padding:11px 12px;display:flex}.search-results button span{color:#e3e1dc;font-size:12px}.search-results button small{color:#686d7d;font:10.5px var(--font-label)}.search-results p{color:#696e7e;margin:0;padding:13px}.content-section{pointer-events:auto;padding:clamp(88px, 9vw, 145px) var(--page-x);border-bottom:1px solid var(--line);position:relative}.section-heading{align-items:flex-start;gap:22px;margin-bottom:clamp(55px,7vw,100px);display:flex}.section-number{width:30px;height:30px;color:var(--accent);font:11px/1 var(--font-label);border:1px solid #624c21;place-items:center;margin-top:5px;display:grid}.section-heading h2{letter-spacing:-.055em;margin:0;font-size:clamp(35px,4vw,58px);font-weight:520;line-height:.95}.section-heading p{color:#6e7384;margin:12px 0 0;font-size:13px}.work-section{background:linear-gradient(#04060beb,#05070ddb);padding-left:0;padding-right:0}.work-section>.section-heading{padding:0 var(--page-x)}.project-showcase{min-height:min(86vh,860px);padding:clamp(65px, 8vw, 120px) var(--page-x);border-top:1px solid var(--line);grid-template-columns:minmax(270px,.72fr) minmax(520px,1.65fr);align-items:center;gap:clamp(40px,6vw,110px);display:grid;position:relative;overflow:hidden}.project-showcase:before{content:"";background:radial-gradient(circle, rgba(var(--accent-rgb),.1), rgba(var(--accent-rgb),.02) 42%, transparent 72%);pointer-events:none;border-radius:50%;width:50vw;height:50vw;position:absolute;top:8%;right:-12vw}.project-showcase.is-reversed{grid-template-columns:minmax(520px,1.65fr) minmax(270px,.72fr)}.project-showcase.is-reversed .project-copy-block{grid-area:1/2}.project-showcase.is-reversed .project-visual-wrap{grid-area:1/1}.project-copy-block{z-index:2;max-width:390px;position:relative}.project-overline{color:#74798a;font:11px/1 var(--font-label);gap:15px;margin:0 0 22px;display:flex}.project-copy-block h3{letter-spacing:-.065em;margin:0;font-size:clamp(48px,5.8vw,88px);font-weight:520;line-height:.86}.project-lede{color:#c1bdb4;margin:25px 0 35px;font-size:clamp(15px,1.25vw,19px);line-height:1.45}.project-copy-block dl{gap:16px;margin:0;display:grid}.project-copy-block dl div{border-top:1px solid var(--line);grid-template-columns:76px 1fr;gap:16px;padding-top:13px;display:grid}.project-copy-block dd{color:#b8b3a8;margin:0;font-size:13px;line-height:1.55}.project-actions{align-items:center;gap:18px;margin-top:34px;display:flex}.project-actions button,.project-actions a{color:#cecac3;font:11px/1 var(--font-label);cursor:pointer;background:0 0;border:0;border-bottom:1px solid #81642b;padding:5px 0;text-decoration:none}.project-visual-wrap{z-index:2;min-width:0;position:relative}.project-visual-wrap:after{content:"";box-shadow:0 30px 80px #0000005c, 0 0 80px rgba(var(--accent-rgb), .06);pointer-events:none;border:1px solid #ead4a724;position:absolute;inset:-1px}.project-media{background:#060912;width:100%;height:min(61vh,650px);min-height:430px;position:relative;overflow:hidden}.media-heading{z-index:4;color:#f1e3c594;font:10.5px/1 var(--font-label);pointer-events:none;gap:14px;display:flex;position:absolute;top:18px;right:20px}.project-media .morph-slider{height:100%}.project-media-poster{object-fit:cover;width:100%;height:100%;display:block}.project-media .morph-slider-btn{background:#04060c6b;border-color:#f1e2c547;border-radius:50%;width:38px;height:38px}.project-media .morph-slider-btn svg{width:14px;height:14px}.project-media .morph-slider-dot{background:#f1e3c54d;width:5px;height:5px}.project-media .morph-slider-dot.is-active{background:var(--accent-bright);width:25px}.media-state-list{z-index:4;color:#f1e3c559;font:10.5px/1 var(--font-label);pointer-events:none;gap:11px;display:flex;position:absolute;bottom:20px;left:20px}.media-state-list span{transition:color .45s}.media-state-list .is-active{color:var(--accent-bright)}.media-loading{color:#707586;height:100%;font:11px var(--font-label);place-items:center;display:grid}.focus-panel .project-media{width:min(460px,100%);height:250px;min-height:0;margin-top:19px}.focus-panel .media-heading{font-size:10px;top:9px;right:10px}.focus-panel .media-state-list{font-size:10px;bottom:9px;left:10px}.project-schematic{background:radial-gradient(circle at 50% 48%, rgba(var(--accent-rgb),.11), transparent 34%), linear-gradient(135deg, #080b13, #04060b);place-items:center;height:min(58vh,610px);min-height:420px;display:grid;position:relative;overflow:hidden}.project-schematic:before{content:"";opacity:.22;background-image:radial-gradient(circle,#f1e3c56b .55px,#0000 .8px);background-size:37px 37px;position:absolute;inset:0}.project-schematic strong{z-index:2;letter-spacing:-.06em;font-size:clamp(48px,6vw,92px);font-weight:480;position:relative}.project-schematic small{z-index:2;color:#6e7384;font:10.5px/1 var(--font-label);position:absolute;bottom:25px;left:28px}.schematic-orbit{border:1px solid rgba(var(--accent-rgb),.22);border-radius:50%;position:absolute;transform:rotate(-13deg)}.orbit-one{aspect-ratio:1;width:58%}.orbit-two{aspect-ratio:2.2;width:86%;transform:rotate(22deg)}.schematic-star{background:var(--accent-bright);width:7px;height:7px;box-shadow:0 0 18px 5px rgba(var(--accent-rgb),.55);border-radius:50%;position:absolute}.star-one{top:21%;left:34%}.star-two{width:4px;height:4px;bottom:31%;right:22%}.star-three{width:3px;height:3px;bottom:22%;left:17%}.experience-section{background:linear-gradient(90deg,#04060b1f,#04060bed 47%,#04060bfa);min-height:85vh}.experience-list{border-top:1px solid var(--line-strong);width:min(900px,70vw);margin-left:auto}.experience-list article{border-bottom:1px solid var(--line);grid-template-columns:100px minmax(180px,.8fr) 1fr;gap:30px;padding:34px 0;display:grid}.experience-period{color:var(--accent);font:11px/1.4 var(--font-label);margin:0}.experience-list h3{margin:0;font-size:18px;font-weight:520;line-height:1.25}.experience-list h3 span{color:#717788;margin-top:6px;font-size:12px;font-weight:400;display:block}.experience-list article>p:not(.experience-period){color:#a59f90;margin:0;font-size:12px;line-height:1.6}.experience-tech{color:#6e7383;font:10.5px/1 var(--font-label);grid-column:2/-1;gap:16px;display:flex}.cv-line{border-bottom:1px solid var(--line);grid-template-columns:100px 1fr 24px;gap:30px;padding:22px 0;text-decoration:none;display:grid}.cv-line span{color:#646877;font:11px/1 var(--font-label)}.cv-line strong{color:#d0cdc6;font-size:13px;font-weight:500}.cv-line:hover strong{color:var(--accent-bright)}.technology-section{pointer-events:none;background:linear-gradient(90deg,#04060b1f,#04060be6 42%,#04060bfa 100%);min-height:100vh}.technology-section .technology-index{pointer-events:auto}.technology-layout{grid-template-columns:.65fr 1.35fr;align-items:start;gap:clamp(50px,8vw,140px);display:grid}.technology-intro{max-width:320px;position:sticky;top:130px}.technology-intro p{color:#aca79a;margin:0 0 25px;font-size:14px;line-height:1.65}.technology-intro span{color:var(--accent);font:10.5px/1 var(--font-label)}.technology-index{border-top:1px solid var(--line-strong);background:#05060c8a}.technology-index article{border-bottom:1px solid var(--line);grid-template-columns:140px 1fr;gap:30px;padding:25px 0;display:grid}.domain-link{text-align:left;color:#e4e3df;cursor:pointer;background:0 0;border:0;align-self:start;padding:4px 0;font-size:16px;font-weight:520}.domain-link:hover{color:var(--accent-bright)}.technology-index article>div{flex-wrap:wrap;gap:7px 18px;display:flex}.technology-index article>div button{text-align:left;color:#bcb8ae;cursor:pointer;background:0 0;border:0;grid-template-columns:auto;gap:4px;min-width:105px;padding:4px 0 10px;font-size:12px;display:grid}.technology-index article>div button:hover{color:var(--accent-bright)}.technology-index small{color:#575b68;font:10px/1 var(--font-label)}.about-section{background:radial-gradient(circle at 18% 56%, rgba(var(--accent-rgb),.09), transparent 28%), #04060bd6;grid-template-columns:.55fr 1.45fr;align-content:center;min-height:78vh;display:grid}.about-section .section-heading{align-self:start}.about-copy p{color:#dbd9d3;letter-spacing:-.045em;margin:0;font-size:clamp(26px,3.5vw,52px);font-weight:430;line-height:1.18}.contact-section{background:linear-gradient(90deg,#04060bf5,#04060ba6);min-height:78vh}.contact-register{border-top:1px solid var(--line-strong);width:min(850px,66vw);margin-left:auto}.contact-register a{border-bottom:1px solid var(--line);color:#757a8c;font:11px/1 var(--font-label);grid-template-columns:100px 1fr 22px;gap:22px;padding:22px 0;text-decoration:none;display:grid}.contact-register a strong{color:#dbd8d2;text-transform:none;font-family:Inter,sans-serif;font-size:clamp(15px,1.4vw,20px);font-weight:500}footer{z-index:4;padding:24px var(--page-x);border-top:1px solid var(--line);color:#606473;font:10.5px/1 var(--font-label);background:#04060a;justify-content:space-between;align-items:center;gap:20px;display:flex;position:relative}footer button{color:#989181;font:inherit;text-transform:inherit;cursor:pointer;background:0 0;border:0;padding:0}@media (max-width:980px){.topbar nav{gap:14px}.focus-panel{width:48vw}.project-showcase,.project-showcase.is-reversed{grid-template-columns:minmax(230px,.65fr) minmax(420px,1.35fr);gap:40px}.project-showcase.is-reversed .project-copy-block{grid-column:1}.project-showcase.is-reversed .project-visual-wrap{grid-column:2}.experience-list{width:78vw}.technology-index article{grid-template-columns:110px 1fr}}@media (max-width:760px){:root{--page-x:22px}.topbar{align-items:flex-start;height:auto;min-height:74px;padding-top:17px;padding-bottom:14px}.wordmark-title{display:none}.topbar nav{flex-wrap:wrap;justify-content:flex-end;gap:10px 13px;max-width:285px}.topbar nav a{font-size:11.5px}.constellation-stage{height:610px;top:74px}.site-shell:not([data-chapter-active=hero]):not([data-chapter-active=technologies]) .constellation-stage{opacity:.12}.site-shell[data-chapter-active=technologies] .constellation-stage{opacity:.38;right:0}.site-shell[data-chapter-active=experience] .constellation-stage{opacity:.22;right:0}.hero{height:650px;min-height:0}.hero.has-focus{height:1040px}.hero:before{inset:12px}.hero-copy{width:76vw;top:55px}.hero h1{font-size:clamp(50px,15vw,68px)}.hero-line{max-width:260px;font-size:12px}.force-node{gap:6px;min-width:72px;min-height:40px;padding:9px 7px}.force-node-name{font-size:11px}.force-node-meta{display:none}.force-node.is-project .force-node-name{font-size:11.5px}.force-node.is-domain{display:none}.simulation-status{top:17px;right:22px}.simulation-status span:last-child,.physics-controls{display:none}.graph-view-controls{bottom:48px;right:22px}.graph-readout{bottom:22px;left:22px}.hero-scroll{display:none}.hero.has-focus .graph-readout{top:408px;bottom:auto}.return-home{top:18px}.focus-panel{background:linear-gradient(90deg,#04060afc,#04060af2 92%,#0000);width:calc(100% - 22px);max-height:560px;padding-right:22px;top:455px;left:22px}.focus-panel h1{font-size:50px}.focus-intro{font-size:12px}.focus-panel .project-media{height:230px}.graph-toolbar{flex-direction:column;align-items:stretch;gap:13px}.universe-search{width:100%;min-width:0}.search-results{width:min(100%,300px);top:37px}.content-section{padding-top:78px;padding-bottom:86px}.section-heading{gap:15px;margin-bottom:55px}.section-heading h2{font-size:36px}.project-showcase,.project-showcase.is-reversed{flex-direction:column;align-items:stretch;gap:38px;min-height:0;padding:72px 22px 84px;display:flex}.project-showcase.is-reversed .project-copy-block,.project-showcase.is-reversed .project-visual-wrap{grid-area:auto}.project-showcase.is-reversed .project-copy-block{order:0}.project-showcase.is-reversed .project-visual-wrap{order:1}.project-copy-block h3{font-size:55px}.project-lede{margin:18px 0 28px}.project-media,.project-schematic{height:56vw;min-height:290px}.media-state-list{gap:7px;font-size:10px}.experience-section{min-height:0}.experience-list,.contact-register{width:100%}.experience-list article{grid-template-columns:70px 1fr;gap:16px}.experience-list article>p:not(.experience-period),.experience-tech{grid-column:2}.cv-line{grid-template-columns:70px 1fr 20px;gap:16px}.technology-section{background:linear-gradient(#04060bb8,#04060bf7 35%);min-height:0}.technology-layout{display:block}.technology-intro{margin-bottom:45px;position:static}.technology-index article{grid-template-columns:100px 1fr;gap:20px}.technology-index article>div button{min-width:88px}.about-section{min-height:70vh;display:block}.about-copy p{font-size:29px}.contact-section{min-height:70vh}.contact-register a{grid-template-columns:65px 1fr 16px;gap:12px}.contact-register a strong{overflow-wrap:anywhere;font-size:13px}footer{flex-direction:column;align-items:flex-start}}@media (max-width:430px){.topbar nav a:nth-child(3){display:none}.hero.has-focus{height:1080px}.focus-panel{max-height:605px}.focus-panel dl{grid-template-columns:78px 1fr}.project-copy-block dl div{grid-template-columns:65px 1fr}.project-media,.project-schematic{min-height:260px}.project-media .morph-slider-btn{width:32px;height:32px}.media-state-list span{display:none}.media-state-list .is-active,.technology-index article{display:block}.domain-link{margin-bottom:18px}.about-copy p{font-size:25px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.site-shell{background:0 0}.galaxy-background{z-index:-3;pointer-events:none;transition:opacity 1.8s;position:fixed;inset:0;overflow:hidden}.galaxy-background canvas{width:100%;height:100%;display:block}.atmospheric-field:after{content:"";background:linear-gradient(#04060a0a,#04060a75 60%,#04060ab3);position:absolute;inset:0}.work-section{background:linear-gradient(#04060bb8,#05070dd1)}.experience-section{background:linear-gradient(90deg,#04060b14,#04060bc2 47%,#04060be6)}.about-section{background:radial-gradient(circle at 18% 56%, rgba(var(--accent-rgb),.1), transparent 29%), #04060bb8}.contact-section{background:linear-gradient(#04060bb8,#04060af0)}.force-node-marker{width:calc(4px + var(--node-scale,.5) * 1.8px);height:calc(4px + var(--node-scale,.5) * 1.8px)}.force-node.is-project .force-node-marker{width:calc(6px + var(--node-scale,1) * 3px);height:calc(6px + var(--node-scale,1) * 3px)}.force-node.is-project[data-importance="5"] .force-node-marker{box-shadow:0 0 5px 1px #fff, 0 0 21px 7px #efdebb6b, 0 0 70px 24px rgba(var(--accent-rgb),.12);background:#fff}.force-node.is-project[data-importance="5"] .force-node-marker:before{box-shadow:0 0 24px rgba(var(--accent-rgb),.12);border-color:#f1e3c52e;inset:-10px}.force-node.is-project[data-importance="5"] .force-node-name{font-size:12px}.force-node.is-project[data-importance="1"] .force-node-name,.force-node.is-project[data-importance="2"] .force-node-name{color:#9c9687;font-size:11.5px;font-weight:500}.simulation-status span:last-child{display:none}.simulation-status{opacity:.7}.project-identity{width:100%;height:100%;color:var(--ink);background:#060912;position:relative;overflow:hidden}.visual-annotation{z-index:4;text-align:right;gap:4px;max-width:48%;display:grid;position:absolute;bottom:8%;right:5%}.visual-annotation strong{font-size:clamp(13px,2vw,22px);font-weight:550}.visual-annotation span{color:#b1ab9f;font-size:11px;line-height:1.4}.visual-minglr{background:radial-gradient(circle at 42% 54%,#cba86138,#0000 44%),#070a12}.visual-minglr img{z-index:2;object-fit:contain;filter:saturate(.7)contrast(1.08)brightness(.78);width:52%;height:122%;position:absolute;bottom:-22%;left:8%}.minglr-party{opacity:.6;position:absolute;inset:0}.minglr-party:before,.minglr-party:after{content:"";background:linear-gradient(90deg, transparent, rgba(var(--accent-rgb),.55), transparent);width:58%;height:1px;position:absolute;top:50%;left:23%;transform:rotate(-13deg)}.minglr-party:after{transform:rotate(22deg)}.minglr-party span{background:var(--accent-bright);width:7px;height:7px;box-shadow:0 0 18px rgba(var(--accent-rgb),.8);border-radius:50%;position:absolute}.minglr-party span:first-child{top:24%;left:24%}.minglr-party span:nth-child(2){top:31%;right:18%}.minglr-party span:nth-child(3){bottom:21%;right:31%}.minglr-party span:nth-child(4){bottom:28%;left:15%}.visual-izrosh{background:#040507}.visual-izrosh img{object-fit:cover;object-position:top;filter:saturate(.55)brightness(.68)contrast(1.12);width:100%;height:100%}.izrosh-mark{color:#fff;letter-spacing:-.05em;border-bottom:2px solid #c39c4d;padding-bottom:4px;font-size:clamp(18px,3vw,34px);font-weight:750;position:absolute;bottom:8%;right:6%}.visual-4thspace{background:radial-gradient(circle at 72% 38%, rgba(var(--accent-rgb),.18), transparent 34%), #070a12}.device{background:#090d18;border:1px solid #f1e3c53d;position:absolute;overflow:hidden;box-shadow:0 18px 50px #00000073}.device-web{width:62%;height:59%;top:19%;left:8%;transform:perspective(800px)rotateY(7deg)}.device-web i{background:#e9d1a021;border-radius:8px;height:9px;position:absolute;left:8%;right:8%}.device-web i:first-of-type{width:52%;top:18%}.device-web i:nth-of-type(2){width:72%;top:32%}.device-web i:nth-of-type(3){width:43%;top:46%}.device-map{background:radial-gradient(circle at 35% 42%, var(--accent) 0 3px, transparent 4px), linear-gradient(132deg, transparent 44%, rgba(var(--accent-rgb),.34) 45% 47%, transparent 48%), #0c1120;width:39%;height:48%;position:absolute;bottom:9%;right:7%}.device-mobile{z-index:2;border-radius:18px;width:24%;height:68%;bottom:9%;right:11%;transform:rotate(3deg)}.device-mobile img{opacity:.75;border-radius:12px;width:44px;margin:18% auto 12%;display:block}.device-mobile span{background:#ead3a62b;border-radius:8px;width:66%;height:7px;margin:8px auto;display:block}.visual-agent-forge{background:radial-gradient(circle at 50% 50%, rgba(var(--accent-rgb),.1), transparent 46%), #05070d;place-items:center;display:grid}.agent-flow{grid-template-columns:auto 1fr auto 1fr auto 1fr auto;align-items:center;gap:8px;width:86%;display:grid}.flow-node{color:#f1e3c5;white-space:nowrap;background:#060a13d9;border:1px solid #e9d09f3d;padding:12px 15px;font-size:11.5px}.flow-control,.flow-run{border-color:rgba(var(--accent-rgb),.6);box-shadow:0 0 25px rgba(var(--accent-rgb),.08)}.agent-flow i{background:linear-gradient(90deg, rgba(var(--accent-rgb),.18), var(--accent), rgba(var(--accent-rgb),.18));height:1px}.agent-stack{gap:7px;display:flex;position:absolute;bottom:8%;left:7%}.agent-stack span{color:#727789;font:10px/1 var(--font-label);border:1px solid #d8be892e;padding:5px 7px}.project-media .morph-slider{z-index:1;position:relative}.project-media:after{content:"";z-index:3;pointer-events:none;background:linear-gradient(#04060b38,#0000 25% 68%,#04060b75);position:absolute;inset:0}.project-media-poster{background:#070a12}.media-state-list{z-index:7;pointer-events:auto}.media-state-list button{color:#f1e3c566;font:inherit;text-transform:inherit;cursor:pointer;background:0 0;border:0;padding:4px 0;transition:color .35s}.media-heading{z-index:7}.agent-letter-field{z-index:2;opacity:.1;mix-blend-mode:screen;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;-webkit-mask-image:radial-gradient(circle at 54% 48%,#000 0 38%,#0000 78%);mask-image:radial-gradient(circle at 54% 48%,#000 0 38%,#0000 78%)}.ascii-resolve{z-index:6;color:#f1e2c59e;font:clamp(13px,2vw,26px)/1 var(--font-label);pointer-events:none;animation:.65s 1.15s forwards ascii-resolve-out;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes ascii-resolve-out{to{opacity:0;letter-spacing:.24em}}.media-minglr[data-state=product] .morph-slider-canvas{filter:saturate(.76)brightness(.72)}.media-izrosh[data-state=catalogue] .morph-slider-canvas{filter:saturate(.72)brightness(.78)}.supporting-projects{margin:0 var(--page-x);border-top:1px solid var(--line-strong)}.supporting-projects header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:20px;padding:24px 0;display:flex}.supporting-projects header span{font-size:19px;font-weight:550}.supporting-projects header p{color:#6d7283;margin:0;font-size:12px}.supporting-projects>button{border:0;border-bottom:1px solid var(--line);text-align:left;width:100%;color:inherit;cursor:pointer;background:0 0;grid-template-columns:minmax(150px,.45fr) 1fr 120px;align-items:center;gap:28px;padding:24px 0;display:grid}.supporting-projects>button strong{font-size:17px;font-weight:520}.supporting-projects>button span{color:#9a9383;font-size:13px;line-height:1.5}.supporting-projects>button small{color:#626675;font:10.5px/1 var(--font-label);justify-self:end}.mobile-staggered-menu{display:none}@media (max-width:760px){body.mobile-menu-open{overflow:hidden}.desktop-navigation{display:none!important}.mobile-staggered-menu{z-index:80;pointer-events:none;display:block;position:fixed;inset:0;overflow:hidden}.mobile-menu-toggle{z-index:5;color:#f1e3c5;pointer-events:auto;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:8px 0;font-size:12px;display:flex;position:absolute;top:20px;right:22px}.mobile-menu-toggle i{width:16px;height:16px;position:relative}.mobile-menu-toggle i:before,.mobile-menu-toggle i:after{content:"";background:currentColor;width:16px;height:1px;transition:transform .35s;position:absolute;top:50%;left:0}.mobile-menu-toggle i:after{transform:rotate(90deg)}.mobile-staggered-menu[data-open] .mobile-menu-toggle i:before{transform:rotate(45deg)}.mobile-staggered-menu[data-open] .mobile-menu-toggle i:after{transform:rotate(-45deg)}.mobile-menu-layer,.mobile-menu-panel{pointer-events:none;position:absolute;inset:0;transform:translate(104%)}.mobile-menu-layer{background:#3b2e14}.mobile-menu-panel{z-index:2;color:#f1e3c5;background:#05080ef7;flex-direction:column;justify-content:space-between;padding:105px 22px 30px;display:flex}.mobile-staggered-menu[data-open] .mobile-menu-panel{pointer-events:auto}.mobile-menu-panel ol{margin:0;padding:0;list-style:none}.mobile-menu-panel li{border-bottom:1px solid #eedbb61f;overflow:hidden}.mobile-menu-panel a{color:inherit;grid-template-columns:42px 1fr;align-items:end;padding:14px 0;text-decoration:none;display:grid}.mobile-menu-number{color:var(--accent);font:10.5px/1 var(--font-label);padding-bottom:5px}.mobile-menu-label{letter-spacing:-.055em;transform-origin:0 100%;font-size:clamp(30px,10vw,48px);font-weight:520;line-height:.95;display:inline-block}.mobile-menu-panel>p{color:#e2e0db;margin:0;font-size:13px;line-height:1.5}.mobile-menu-panel>p span{color:#73788a}.galaxy-background{opacity:.5!important}.project-showcase{border-top-color:#eedcb929}.supporting-projects{margin:0 22px}.supporting-projects>button{grid-template-columns:1fr auto;gap:8px 16px}.supporting-projects>button span{grid-column:1/-1}.supporting-projects>button small{grid-area:1/2}.media-state-list{max-width:calc(100% - 120px);overflow:hidden}.media-state-list button{display:none}.media-state-list button.is-active{display:block}.ascii-resolve{font-size:12px}}@media (prefers-reduced-motion:reduce){.galaxy-background{opacity:.42!important}.ascii-resolve,.letter-glitch{display:none}}.work-section{--accent:#d8be8b;--accent-bright:#f1e3c5;--accent-rgb:216,190,139;color:#f1e3c5;background:linear-gradient(#040509e0,#030408f5);padding-top:clamp(84px,8vw,132px)}.work-section>.section-heading{margin-bottom:clamp(56px,7vw,94px)}.work-section .section-number{border-color:#dbc3924d}.work-section .section-heading p{color:#9d9687}.project-showcases{display:block}.project-showcase{--project-accent:#d6bb85;--project-accent-rgb:214,187,133;--project-soft:#f1e3c5;isolation:isolate;min-height:min(100svh,980px);padding:clamp(76px,8vw,124px) var(--page-x);background:#040508;border-top:1px solid #eddab31f;grid-template-columns:minmax(260px,.6fr) minmax(650px,1.55fr);grid-template-areas:"copy inspection";align-items:center;gap:clamp(42px,5.5vw,94px);transition:background-color 1.1s;display:grid;position:relative;overflow:clip}.project-showcase:before{content:"";z-index:-2;background:radial-gradient(circle at 73% 48%, rgba(var(--project-accent-rgb),.13), transparent 30%), radial-gradient(circle at 15% 80%, rgba(var(--project-accent-rgb),.045), transparent 28%), linear-gradient(118deg, #040508 0%, #05070d 58%, #030407 100%);filter:none;opacity:.72;border-radius:0;width:auto;height:auto;transition:opacity 1.1s,transform 1.4s cubic-bezier(.22,.74,.18,1);position:absolute;inset:0}.project-showcase:after{content:"";z-index:-1;pointer-events:none;opacity:.07;background-image:radial-gradient(circle,#f1e3c55c .45px,#0000 .7px);background-size:43px 43px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#0000 4%,#000 48%,#0000 96%);mask-image:linear-gradient(90deg,#0000 4%,#000 48%,#0000 96%)}.project-showcase.is-active:before{opacity:1;transform:scale(1.025)}.project-showcase.project-agent-forge{--project-accent:#d0b172;--project-accent-rgb:208,177,114;--project-soft:#f1e3c5;grid-template-columns:minmax(650px,1.55fr) minmax(260px,.6fr);grid-template-areas:"inspection copy"}.project-showcase.project-izrosh{--project-accent:#b18a3b;--project-accent-rgb:177,138,59;--project-soft:#f1e3c5;grid-template-columns:minmax(650px,1.55fr) minmax(260px,.6fr);grid-template-areas:"inspection copy"}.project-copy-block{z-index:4;grid-area:copy;max-width:410px;position:relative}.project-overline{color:#999383;letter-spacing:.055em}.project-overline span{color:var(--project-accent)}.project-copy-block h3{color:#f1e3c5;letter-spacing:-.07em;text-wrap:balance;font-size:clamp(56px,6.2vw,98px);font-weight:540}.project-lede{color:#c8c4bc;max-width:400px;font-size:clamp(15px,1.25vw,19px)}.project-copy-block dl div{border-color:#eddab321;grid-template-columns:72px 1fr}.project-copy-block dt{color:#6d7283}.project-copy-block dd{color:#bebab0}.project-actions button,.project-actions a{border-color:rgba(var(--project-accent-rgb),.48);color:#cfccc4}.project-actions button:hover,.project-actions a:hover{border-color:var(--project-accent);color:#fff}.project-inspection{grid-area:inspection;grid-template-columns:minmax(0,1.45fr) minmax(280px,.72fr);align-items:stretch;gap:clamp(16px,1.8vw,28px);min-width:0;display:grid}.project-agent-forge .project-inspection,.project-izrosh .project-inspection{grid-template-columns:minmax(280px,.72fr) minmax(0,1.45fr)}.project-agent-forge .local-project-graph,.project-izrosh .local-project-graph{grid-area:1/1}.project-agent-forge .project-visual-wrap,.project-izrosh .project-visual-wrap{grid-area:1/2}.project-4thspace .project-inspection{grid-template-columns:minmax(0,1.25fr) minmax(310px,.86fr)}.project-izrosh .project-inspection{grid-template-columns:minmax(300px,.82fr) minmax(0,1.35fr)}.project-visual-wrap{min-width:0;box-shadow:0 34px 100px #0000006b}.project-media{background:#05070d;height:min(66vh,650px);min-height:520px}.media-state-list{color:#f1e3c566;flex-wrap:wrap;row-gap:8px;max-width:calc(100% - 118px)}.project-media .morph-slider-btn{border-color:rgba(var(--project-accent-rgb),.34);background:#04060c8c}.agent-letter-field{color:var(--project-soft);opacity:.085}.ascii-resolve{color:rgba(var(--project-accent-rgb),.62)}.local-project-graph{border:1px solid rgba(var(--project-accent-rgb),.18);background:radial-gradient(circle at 50% 48%, rgba(var(--project-accent-rgb),.13), transparent 31%), linear-gradient(150deg, #0a0e1adb, #040509f5);min-width:0;height:min(66vh,650px);min-height:520px;transition:border-color .7s,box-shadow .8s;position:relative;overflow:hidden;box-shadow:inset 0 0 70px #00000052,0 28px 80px #00000052}.local-project-graph:before{content:"";pointer-events:none;background-image:linear-gradient(rgba(var(--project-accent-rgb),.025) 1px, transparent 1px), linear-gradient(90deg, rgba(var(--project-accent-rgb),.025) 1px, transparent 1px);background-size:58px 58px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(circle,#000,#0000 76%);mask-image:radial-gradient(circle,#000,#0000 76%)}.local-graph-heading{z-index:5;color:#6d7282;font:10.5px/1 var(--font-label);pointer-events:none;justify-content:space-between;display:flex;position:absolute;top:17px;left:18px;right:18px}.local-graph-heading span:first-child{color:rgba(var(--project-accent-rgb),.78)}.local-graph-edges{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.local-graph-edges line{stroke:#ecd7ad4d;stroke-width:.75px;vector-effect:non-scaling-stroke;transition:stroke .3s,opacity .3s}.local-graph-edges line.is-region{stroke:rgba(var(--project-accent-rgb),.21);stroke-dasharray:2 7}.local-graph-edges line.is-emphasised{stroke:var(--project-soft);stroke-width:1.05px}.local-graph-edges line.is-dimmed{opacity:.08}.local-graph-nodes{position:absolute;inset:0}.local-graph-node{z-index:2;color:#b3aea3;text-align:left;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;will-change:transform;pointer-events:none;background:0 0;border:0;align-items:center;gap:8px;min-width:74px;min-height:34px;padding:8px;transition:opacity .28s,filter .28s;display:flex;position:absolute;top:0;left:0}.local-graph-node[data-align=right]{text-align:right;flex-direction:row-reverse}.local-graph-node:active{cursor:grabbing}.local-graph-node>span{width:var(--local-node-size,6px);height:var(--local-node-size,6px);box-shadow:0 0 5px #fff, 0 0 16px rgba(var(--project-accent-rgb),.42);pointer-events:auto;cursor:grab;background:#f1e3c5;border-radius:50%;flex:none;transition:transform .28s,box-shadow .28s;position:absolute;top:50%;left:0;transform:translate(-50%,-50%)}.local-graph-node strong{pointer-events:none;margin-left:4px}.local-graph-node[data-align=right] strong{margin-left:0;margin-right:4px}.local-graph-node strong{white-space:nowrap;font-size:11.5px;font-weight:520;line-height:1.15}.local-graph-node.is-project{z-index:3;color:#fff;min-width:105px}.local-graph-node.is-project>span{width:11px;height:11px;box-shadow:0 0 6px #fff, 0 0 20px 6px rgba(var(--project-accent-rgb),.64), 0 0 58px 18px rgba(var(--project-accent-rgb),.18);background:#fff}.local-graph-node.is-project>span:before{content:"";border:1px solid rgba(var(--project-accent-rgb),.32);border-radius:50%;position:absolute;inset:-9px}.local-graph-node.is-project strong{font-size:12px;font-weight:650}.local-graph-node.is-domain{color:rgba(var(--project-accent-rgb),.78)}.local-graph-node.is-domain>span{background:var(--project-accent);width:4px;height:4px}.local-graph-node.is-domain strong{font:10.5px/1 var(--font-label)}.local-graph-node:hover,.local-graph-node:focus-visible,.local-graph-node.is-emphasised{z-index:5;color:#fff;filter:brightness(1.16)}.local-graph-node:hover>span,.local-graph-node:focus-visible>span,.local-graph-node.is-emphasised>span{box-shadow:0 0 7px #fff, 0 0 22px 6px rgba(var(--project-accent-rgb),.68);background:#fff;transform:translate(-50%,-50%)scale(1.3)}.local-graph-node[data-align=right]:hover>span,.local-graph-node[data-align=right]:focus-visible>span,.local-graph-node[data-align=right].is-emphasised>span{transform:translate(50%,-50%)scale(1.3)}.local-graph-instruction{z-index:5;color:#5d616f;font:10px/1 var(--font-label);pointer-events:none;margin:0;position:absolute;bottom:16px;right:18px}.site-shell[data-chapter-active=work] .constellation-stage,.site-shell[data-chapter-active=minglr] .constellation-stage,.site-shell[data-chapter-active=agent-forge] .constellation-stage,.site-shell[data-chapter-active="4thspace"] .constellation-stage,.site-shell[data-chapter-active=izrosh] .constellation-stage{opacity:0;visibility:hidden;transition:opacity .55s,visibility 0s linear .55s}.site-shell[data-chapter-active=minglr] .atmospheric-field span:first-child{background:radial-gradient(circle,#d6ba8357,#0000 68%)}.site-shell[data-chapter-active=agent-forge] .atmospheric-field span:first-child{background:radial-gradient(circle,#d0b1724d,#0000 68%)}.site-shell[data-chapter-active="4thspace"] .atmospheric-field span:first-child{background:radial-gradient(circle,#d1b2754d,#0000 68%)}.site-shell[data-chapter-active=izrosh] .atmospheric-field span:first-child{background:radial-gradient(circle,#b18a3b4d,#0000 68%)}@media (max-width:1180px){.project-showcase,.project-showcase.project-agent-forge,.project-showcase.project-izrosh{grid-template-columns:minmax(230px,.52fr) minmax(560px,1.48fr);grid-template-areas:"copy inspection";gap:42px}.project-inspection,.project-agent-forge .project-inspection,.project-izrosh .project-inspection,.project-4thspace .project-inspection{grid-template-columns:minmax(0,1.3fr) minmax(240px,.7fr)}.project-agent-forge .project-visual-wrap,.project-izrosh .project-visual-wrap{grid-column:1}.project-agent-forge .local-project-graph,.project-izrosh .local-project-graph{grid-column:2}}@media (max-width:900px){.project-showcase,.project-showcase.project-agent-forge,.project-showcase.project-izrosh{min-height:0;padding:82px var(--page-x) 96px;grid-template-columns:1fr;grid-template-areas:"copy""inspection";gap:48px;display:grid}.project-copy-block{max-width:620px}.project-copy-block h3{font-size:clamp(54px,10vw,82px)}.project-inspection,.project-agent-forge .project-inspection,.project-izrosh .project-inspection,.project-4thspace .project-inspection{grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr)}.project-agent-forge .project-visual-wrap,.project-izrosh .project-visual-wrap{grid-column:1}.project-agent-forge .local-project-graph,.project-izrosh .local-project-graph{grid-column:2}}@media (max-width:680px){.work-section{padding-top:76px}.project-showcase,.project-showcase.project-agent-forge,.project-showcase.project-izrosh{flex-direction:column;align-items:stretch;gap:38px;padding:68px 22px 82px;display:flex}.project-copy-block h3{font-size:clamp(50px,17vw,70px)}.project-lede{font-size:15px}.project-inspection,.project-agent-forge .project-inspection,.project-izrosh .project-inspection,.project-4thspace .project-inspection{flex-direction:column;display:flex}.project-visual-wrap{order:1}.local-project-graph{order:2;height:390px;min-height:390px}.project-media{height:68vw;min-height:320px;max-height:430px}.local-graph-node strong{font-size:11px}.local-graph-instruction{display:none}.media-state-list{max-width:calc(100% - 90px);bottom:14px;left:14px}}@media (prefers-reduced-motion:reduce){.project-showcase:before{transform:none!important}.local-project-graph,.local-graph-node,.local-graph-edges line{transition:none}}.project-showcase,.project-showcase.project-agent-forge,.project-showcase.project-izrosh{grid-template:"copy systems""media media"/minmax(260px,.55fr) minmax(620px,1.45fr);align-items:start;row-gap:clamp(54px,6vw,92px);min-height:0}.project-showcase.project-agent-forge,.project-showcase.project-izrosh{grid-template-columns:minmax(620px,1.45fr) minmax(260px,.55fr);grid-template-areas:"systems copy""media media"}.project-system-grid{grid-area:systems;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(14px,1.6vw,24px);min-width:0;display:grid}.project-system-grid .local-project-graph,.local-node-inspector{height:clamp(470px,52vh,560px);min-height:0}.project-media-stage{grid-area:media;justify-self:end;width:min(88%,1180px);min-width:0}.project-agent-forge .project-media-stage{justify-self:start}.project-4thspace .project-media-stage{width:min(92%,1240px)}.project-izrosh .project-media-stage{width:min(84%,1120px)}.project-media-stage>header{border-bottom:1px solid rgba(var(--project-accent-rgb),.18);justify-content:space-between;align-items:baseline;gap:24px;padding:0 0 14px;display:flex}.project-media-stage>header span{color:var(--project-soft);font-size:13px;font-weight:550}.project-media-stage>header p{color:#6a6e7e;margin:0;font-size:11.5px}.project-media-stage .project-visual-wrap{margin-top:18px}.project-media-stage .project-media{aspect-ratio:16/9;height:auto;min-height:0}.project-media-poster{object-fit:contain;background:#030408}.local-node-inspector{border:1px solid rgba(var(--project-accent-rgb),.18);background:linear-gradient(150deg,#0a0e1aeb,#04060afa);flex-direction:column;padding:clamp(22px,2.4vw,34px);display:flex;position:relative;overflow:hidden;box-shadow:inset 0 0 70px #0000003d,0 28px 80px #00000047}.local-node-inspector>header{color:#6d7282;font:10.5px/1 var(--font-label);justify-content:space-between;gap:16px;display:flex}.local-node-inspector>header span:last-child{color:rgba(var(--project-accent-rgb),.86)}.inspector-object{align-items:center;gap:16px;margin-top:clamp(40px,6vh,64px);display:flex}.inspector-object>i{width:11px;height:11px;box-shadow:0 0 6px #fff, 0 0 22px 7px rgba(var(--project-accent-rgb),.55), 0 0 58px 18px rgba(var(--project-accent-rgb),.13);background:#fff;border-radius:50%;flex:none;position:relative}.inspector-object>i:before{content:"";border:1px solid rgba(var(--project-accent-rgb),.28);border-radius:50%;position:absolute;inset:-9px}.inspector-object p{color:#6e7384;font:10.5px/1 var(--font-label);margin:0 0 6px}.inspector-object h4{color:#f1e3c5;letter-spacing:-.05em;margin:0;font-size:clamp(25px,2.5vw,38px);font-weight:540;line-height:.95}.inspector-description{color:#bebab0;margin:26px 0 22px;font-size:12px;line-height:1.58}.local-node-inspector dl{border-top:1px solid #eddab31f;gap:0;margin:0;display:grid}.local-node-inspector dl div{border-bottom:1px solid #eddab31a;grid-template-columns:72px 1fr;gap:12px;padding:12px 0;display:grid}.local-node-inspector dt{color:#656a79;font:10px/1.4 var(--font-label)}.local-node-inspector dd{color:#b3ada2;margin:0;font-size:12px;line-height:1.45}.local-node-inspector ul{gap:8px;margin:18px 0 0;padding:0;list-style:none;display:grid}.local-node-inspector li{color:#9e9889;padding-left:13px;font-size:11.5px;line-height:1.45;position:relative}.local-node-inspector li:before{content:"";background:var(--project-accent);width:4px;height:1px;position:absolute;top:.55em;left:0}.local-node-inspector>button{border:0;border-bottom:1px solid rgba(var(--project-accent-rgb),.48);color:var(--project-soft);font:10.5px/1 var(--font-label);cursor:pointer;background:0 0;align-self:flex-start;margin-top:auto;padding:6px 0}.local-node-inspector>button:hover{border-color:var(--project-soft);color:#fff}.inspector-connection{border-top:1px solid #eddab31f;grid-template-columns:auto 1fr;align-items:center;gap:7px 12px;margin-top:18px;padding-top:15px;display:grid}.inspector-connection>span{color:#656a79;font:10px/1 var(--font-label);grid-column:1/-1}.inspector-connection strong{color:#b2aca0;font-size:11.5px;font-weight:500}.inspector-connection i{background:linear-gradient(90deg,var(--project-accent),transparent);grid-column:1/-1;width:65%;height:1px}.inspector-linked-list{border-top:1px solid #eddab31f;flex-wrap:wrap;gap:7px 12px;margin-top:20px;padding-top:15px;display:flex}.inspector-linked-list>span{color:#656a79;width:100%;font:10px/1 var(--font-label);margin-bottom:4px}.inspector-linked-list strong{color:#b2aca0;font-size:11.5px;font-weight:500}.inspector-linked-list strong:not(:last-child):after{content:" ·";color:var(--project-accent)}.local-graph-edges line.is-selected{stroke:var(--project-soft);stroke-width:1.15px;opacity:.9}.local-graph-node.is-selected{z-index:6;color:#fff;opacity:1}.local-graph-node.is-selected>span{box-shadow:0 0 7px #fff, 0 0 24px 8px rgba(var(--project-accent-rgb),.75);background:#fff;transform:scale(1.42)}.local-graph-node.is-selected-related:not(.is-selected){opacity:.88}@media (max-width:1180px){.project-showcase,.project-showcase.project-agent-forge,.project-showcase.project-izrosh{grid-template-columns:minmax(220px,.42fr) minmax(600px,1.58fr);grid-template-areas:"copy systems""media media"}.project-system-grid .local-project-graph,.local-node-inspector{height:500px}.project-media-stage{width:92%}}@media (max-width:900px){.project-showcase,.project-showcase.project-agent-forge,.project-showcase.project-izrosh{grid-template-columns:1fr;grid-template-areas:"copy""systems""media"}.project-system-grid .local-project-graph,.local-node-inspector{height:480px}.project-media-stage,.project-4thspace .project-media-stage,.project-izrosh .project-media-stage{width:100%}}@media (max-width:680px){.project-system-grid{grid-template-columns:1fr}.project-system-grid .local-project-graph{order:1;height:400px}.local-node-inspector{order:2;height:auto;min-height:430px}.project-media-stage .project-media{aspect-ratio:4/3;min-height:0}.project-media-stage>header{flex-direction:column;align-items:flex-start;gap:6px}}.visual-real-media img{object-fit:cover;width:100%;height:100%;display:block}:root{color:#f1f0ee;--ink:#f1f0ee;--soft:#bdb9af;--muted:#7c8191;--faint:#4c4f5a;--line:#ffffff16;--line-strong:#ffffff26;--field:#040509;--panel:#070a10;--accent:#d5b981;--accent-bright:#efddba;--accent-rgb:213,185,129;background:#040509}html,body,.site-shell{background:var(--field)}.topbar{border-color:var(--line);background:#040509d6}.wordmark-title,.topbar nav a{color:#a39d8e}.wordmark-sigil{color:#f1e3c5}.atmospheric-field:before{opacity:.6}.atmospheric-field span{opacity:.09}.atmospheric-field span:nth-child(2){background:radial-gradient(circle,#8f6f303d,#0000 68%)}.atmospheric-field span:nth-child(3){background:radial-gradient(circle,#efddba14,#0000 72%)}.hero:before{border-color:#ffffff0e;box-shadow:inset 0 0 60px #0003}.hero-line{color:#aba699}.role{color:#e8e7e3}.role span{box-shadow:0 0 12px rgba(var(--accent-rgb),.65);background:#fff}.graph-toolbar{border-color:var(--line);color:#7e8394;background:#05070be8}.quick-orbits button{color:#b3ada2;border-color:#ffffff21}.universe-search input{color:#f1e3c5;border-color:#ffffff24}.universe-search kbd,.search-results,.search-results button{border-color:#ffffff1f}.search-results{background:#070a10}.search-results button:hover{background:#0b0f1b}.force-node{opacity:.76}.force-node-marker:before{border-color:#efddba14}.force-node-name{color:#b3aea3;text-shadow:0 1px 7px #040509}.force-node-meta{color:#5a5e6c}.force-node.is-project .force-node-marker,.force-node.is-project[data-importance="5"] .force-node-marker{box-shadow:0 0 4px #fff, 0 0 14px 3px rgba(var(--accent-rgb),.23), 0 0 38px 11px rgba(var(--accent-rgb),.06);background:#fff}.force-node.is-project .force-node-marker:after{border-color:#efddba33}.force-node.is-project[data-importance="5"] .force-node-marker:before{box-shadow:none;border-color:#efddba24}.force-node.is-domain .force-node-marker{box-shadow:none;background:#9b9485}.force-node.is-domain .force-node-name{color:#6b7081}.force-node:hover .force-node-marker,.force-node:focus-visible .force-node-marker,.force-node.is-selected .force-node-marker,.force-node.is-dragging .force-node-marker{box-shadow:0 0 4px #fff, 0 0 15px 4px rgba(var(--accent-rgb),.5), 0 0 38px 10px rgba(var(--accent-rgb),.1);background:#fff}.force-node.is-selected:after{box-shadow:none;border-color:#efddba4d}.graph-view-controls button,.physics-controls{color:#777c8d;background:#06080ed1;border-color:#ffffff1f}.content-section{border-color:var(--line)}.section-number{color:#e9d1a2;border-color:#d5b98152}.section-heading p{color:#6d7283}.experience-section,.about-section,.contact-section{background:#04060adb}.experience-list,.contact-register{border-color:var(--line-strong)}.experience-list h3 span,.experience-list article>p:not(.experience-period),.experience-tech{color:#9a9383}.cv-line strong,.contact-register a strong{color:#dbd8d2}.contact-register a,footer{color:#6d7283}footer{border-color:var(--line);background:#040509}.about-copy p{color:#e1dfdb}.work-section{--accent:#d5b981;--accent-bright:#efddba;--accent-rgb:213,185,129;background:#040509}.project-showcase:before{opacity:.36;filter:none}.project-showcase.project-minglr{--project-accent:#d9bf8b;--project-accent-rgb:217,191,139;--project-soft:#f1e3c5}.project-showcase.project-agent-forge{--project-accent:#cdab68;--project-accent-rgb:205,171,104;--project-soft:#eddab4}.project-showcase.project-4thspace{--project-accent:#d0b071;--project-accent-rgb:208,176,113;--project-soft:#efdebc}.project-showcase.project-izrosh{--project-accent:#636776;--project-accent-rgb:99,103,118;--project-soft:#c2beb5}.project-visual-wrap{box-shadow:0 24px 65px #00000057}.project-visual-wrap:after{border-color:#ffffff1a;box-shadow:inset 0 0 0 1px #ffffff05}.project-media-stage>header span{color:#cecbc3}.local-project-graph,.local-node-inspector{background:#07090fe0;border-color:#ffffff1a;box-shadow:inset 0 0 42px #00000042,0 20px 55px #00000038}.local-graph-edges line{stroke:#c5c1b840}.local-graph-edges line.is-region{stroke:rgba(var(--project-accent-rgb),.16)}.local-graph-edges line.is-emphasised,.local-graph-edges line.is-selected{stroke:var(--project-soft)}.local-graph-node:hover>span,.local-graph-node:focus-visible>span,.local-graph-node.is-emphasised>span,.local-graph-node.is-selected>span{box-shadow:0 0 4px #fff, 0 0 15px 4px rgba(var(--project-accent-rgb),.5)}.technology-section{pointer-events:auto;background:linear-gradient(#04060af0,#05070dfa);min-height:0}.technology-section>.section-heading{margin-bottom:clamp(42px,5vw,68px)}.site-shell[data-chapter-active=technologies] .constellation-stage{opacity:0;visibility:hidden;pointer-events:none}.technology-explorer{grid-template-columns:minmax(0,1.8fr) minmax(300px,.72fr);align-items:stretch;gap:clamp(18px,2.2vw,34px);display:grid}.technology-map-shell,.technology-inspector{background:#06080ec7;border:1px solid #ffffff1a}.technology-map-shell>header,.technology-inspector>header,.technology-accessible-index>header{color:#7d8292;height:46px;font:10.5px/1 var(--font-label);border-bottom:1px solid #ffffff16;justify-content:space-between;align-items:center;gap:18px;padding:0 17px;display:flex}.technology-map-shell>header div{color:#aca699;align-items:center;gap:8px;display:flex}.technology-map-shell>header p,.technology-accessible-index>header p{color:#5c616f;margin:0}.map-status-dot{border:1px solid #e9d1a2;border-radius:50%;width:5px;height:5px}.technology-map{touch-action:pan-y;background:radial-gradient(circle,#d5b9810b,#0000 44%);height:clamp(570px,63vh,690px);position:relative;overflow:hidden}.technology-map:before{content:"";pointer-events:none;background-image:linear-gradient(#ffffff04 1px,#0000 1px),linear-gradient(90deg,#ffffff04 1px,#0000 1px);background-size:64px 64px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(circle,#000,#0000 82%);mask-image:radial-gradient(circle,#000,#0000 82%)}.technology-map svg,.technology-map-nodes,.technology-map-regions{width:100%;height:100%;position:absolute;inset:0}.technology-map svg{pointer-events:none;overflow:visible}.technology-map line{vector-effect:non-scaling-stroke;stroke:#777c8d;stroke-width:.65px;opacity:.17;transition:opacity .25s,stroke .25s}.technology-map line.is-active{opacity:.48}.technology-map-regions{pointer-events:none}.technology-map-regions span{color:#b2aca038;font:10px/1 var(--font-label);position:absolute;transform:translate(-50%,-50%)}.technology-map-node{z-index:2;color:#b3ada2;text-align:left;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;will-change:transform;background:0 0;border:0;align-items:center;gap:7px;min-height:32px;padding:7px;transition:opacity .22s,color .22s;display:flex;position:absolute;top:0;left:0}.technology-map-node[data-align=right]{text-align:right;flex-direction:row-reverse}.technology-map-node:active,.technology-map-node.is-dragging{cursor:grabbing}.technology-map-node i{width:calc(3px + var(--map-importance) * .48px);height:calc(3px + var(--map-importance) * .48px);background:#e5e4e0;border-radius:50%;flex:none;transition:transform .22s,box-shadow .22s;position:relative;box-shadow:0 0 3px #ffffffdb}.technology-map-node span{white-space:nowrap;font-size:11px;font-weight:520}.technology-map-node.is-project{z-index:3;color:#f1f0ed}.technology-map-node.is-project span{font-size:12px;font-weight:650}.technology-map-node:hover,.technology-map-node:focus-visible,.technology-map-node.is-selected{z-index:5;color:#fff}.technology-map-node:hover i,.technology-map-node:focus-visible i,.technology-map-node.is-selected i{background:#fff;transform:scale(1.35);box-shadow:0 0 4px #fff,0 0 14px 4px #d5b98185}.technology-map-node.is-selected:after{content:"";pointer-events:none;border:1px solid #efddba57;border-radius:50%;width:27px;height:27px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.technology-inspector{flex-direction:column;min-height:617px;padding-bottom:20px;display:flex}.technology-inspector>header button{color:#9e9788;font:inherit;text-transform:inherit;cursor:pointer;background:0 0;border:0;padding:0}.technology-inspector-intro,.technology-inspector-object,.technology-inspector-description,.technology-evidence,.technology-stack-list,.technology-inspector dl,.inspector-open{margin-left:22px;margin-right:22px}.technology-inspector-intro{margin-top:33px}.technology-inspector-intro p,.technology-inspector-object p{color:#787d8e;font:10.5px/1.2 var(--font-label);margin:0 0 8px}.technology-inspector-intro h3,.technology-inspector-object h3{color:#f1f0ee;letter-spacing:-.05em;margin:0;font-size:clamp(26px,2.4vw,36px);font-weight:540;line-height:.98}.technology-inspector-intro>span{color:#a8a294;margin-top:16px;font-size:13px;line-height:1.55;display:block}.domain-filter-list{border-top:1px solid #ffffff16;margin:28px 22px 0;display:grid}.domain-filter-list button{color:#b3ada2;text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #ffffff12;justify-content:space-between;align-items:center;gap:14px;padding:9px 0;font-size:12px;display:flex}.domain-filter-list button small{color:#5b5f6c;font:10px/1 var(--font-label)}.domain-filter-list button:hover,.domain-filter-list button.is-active{color:#f1e3c5}.technology-inspector-object{align-items:center;gap:14px;margin-top:38px;display:flex}.technology-inspector-object>i{background:#fff;border-radius:50%;flex:none;width:8px;height:8px;box-shadow:0 0 4px #fff,0 0 15px 4px #d5b98173}.technology-inspector-object.is-project>i{width:12px;height:12px}.technology-inspector-description{color:#b3ada2;margin-top:24px;margin-bottom:0;font-size:12px;line-height:1.6}.technology-evidence,.technology-stack-list{border-top:1px solid #ffffff17;margin-top:27px;display:grid}.technology-evidence>span,.technology-stack-list>span{color:#666b7b;font:10px/1 var(--font-label);padding:13px 0 8px}.technology-evidence button{text-align:left;cursor:pointer;background:0 0;border:0;border-top:1px solid #ffffff0e;justify-content:space-between;gap:12px;padding:10px 0;display:flex}.technology-evidence strong{color:#c3bfb6;font-size:12px;font-weight:520}.technology-evidence small{color:#606473;font:10px/1 var(--font-label)}.technology-stack-list{flex-wrap:wrap;gap:8px 12px;display:flex}.technology-stack-list>span{width:100%}.technology-stack-list button{color:#b3aea2;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #d5b98142;padding:2px 0;font-size:11.5px}.technology-inspector dl{border-top:1px solid #ffffff17;margin-top:24px;display:grid}.technology-inspector dl div{border-bottom:1px solid #ffffff0f;grid-template-columns:68px 1fr;gap:12px;padding:10px 0;display:grid}.technology-inspector dt{color:#636776;font:10px/1.3 var(--font-label)}.technology-inspector dd{color:#b3ada2;text-transform:capitalize;margin:0;font-size:11.5px}.inspector-open{color:#edd9b2;font:10.5px/1 var(--font-label);cursor:pointer;background:0 0;border:0;border-bottom:1px solid #d5b98161;align-self:flex-start;margin-top:auto;padding:7px 0}.inspector-open:hover{color:#f1e3c5;border-color:#ebd6ac}.technology-accessible-index{border-top:1px solid #ffffff1c;grid-column:1/-1;margin-top:clamp(38px,5vw,64px)}.technology-accessible-index>header{padding:0}.technology-accessible-index>div{grid-template-columns:repeat(4,minmax(0,1fr));gap:0 28px;display:grid}.technology-accessible-index article{border-bottom:1px solid #ffffff13;padding:24px 0}.technology-accessible-index article>button{color:#d8d5cf;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;font-size:12px;font-weight:560}.technology-accessible-index article>p{flex-wrap:wrap;gap:7px 14px;margin:13px 0 0;display:flex}.technology-accessible-index article>p button{color:#9a9383;cursor:pointer;background:0 0;border:0;gap:5px;padding:0;font-size:11.5px;display:flex}.technology-accessible-index article>p button:hover,.technology-accessible-index article>button:hover{color:#f1e3c5}.technology-accessible-index small{color:#565a68;font:10px/1 var(--font-label)}@media (max-width:980px){.technology-explorer{grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr)}.technology-accessible-index>div{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:760px){.mobile-menu-toggle{color:#dedbd6}.mobile-menu-layer{background:#443517}.mobile-menu-panel{color:#f1e3c5;background:#05070cfa}.mobile-menu-panel li{border-color:#ffffff1a}.mobile-menu-panel>p{color:#bdb9af}.technology-explorer{grid-template-columns:1fr}.technology-map{height:520px}.technology-inspector{min-height:0}.technology-accessible-index{margin-top:26px}.technology-accessible-index>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}.technology-map-regions{opacity:.6}.technology-map-node{touch-action:pan-y}}@media (max-width:480px){.technology-map{height:480px}.technology-map-shell>header p{display:none}.technology-accessible-index>div{grid-template-columns:1fr}}.force-node-marker,.local-graph-node>span,.technology-map-node i,.force-node-copy,.local-graph-node strong,.technology-map-node>span{pointer-events:none}.force-graph[data-zoom=far] .force-node[data-label-tier=domain] .force-node-copy,.force-graph[data-zoom=far] .force-node[data-label-tier=detail] .force-node-copy,.local-graph-node[data-label-tier=detail] strong{opacity:0}.local-graph-node strong{transition:opacity .2s,color .2s}.local-graph-node:hover strong,.local-graph-node:focus-visible strong,.local-graph-node.is-selected strong,.local-graph-node.is-selected-related strong,.local-graph-node.is-emphasised strong{opacity:1}.technology-map-node[data-label-tier=detail]>span{opacity:0}.technology-map-node>span{transition:opacity .2s,color .2s}.technology-map-node:hover>span,.technology-map-node:focus-visible>span,.technology-map-node.is-selected>span,.technology-map-node.is-related>span{opacity:1}@media (max-width:760px){.force-node:before,.local-graph-node:before,.technology-map-node:before{width:32px;height:32px}.force-node[data-label-tier=detail] .force-node-copy,.force-node[data-label-tier=domain] .force-node-copy,.local-graph-node[data-label-tier=detail] strong,.technology-map-node[data-label-tier=detail]>span{opacity:0}.force-node:hover .force-node-copy,.force-node:focus-visible .force-node-copy,.force-node.is-selected .force-node-copy,.force-node.is-selection-related .force-node-copy,.local-graph-node:hover strong,.local-graph-node:focus-visible strong,.local-graph-node.is-selected strong,.local-graph-node.is-selected-related strong,.local-graph-node.is-emphasised strong,.technology-map-node:hover>span,.technology-map-node:focus-visible>span,.technology-map-node.is-selected>span,.technology-map-node.is-related>span,.technology-explorer.is-map-expanded .technology-map-node>span{opacity:1}.technology-explorer.is-map-expanded .technology-map{height:680px}.technology-map-context{max-width:62%}.project-minglr,.project-agent-forge,.project-4thspace,.project-izrosh{padding-top:72px;padding-bottom:88px}.project-agent-forge .project-system-grid,.project-4thspace .project-system-grid,.project-izrosh .project-system-grid{grid-template-columns:1fr}}@media (forced-colors:active){.force-node-marker,.local-graph-node>span,.technology-map-node i{forced-color-adjust:auto;box-shadow:none;background:buttontext}.force-edges line,.local-graph-edges line,.technology-map line{stroke:canvastext;opacity:.55}.force-node-copy,.local-graph-node strong,.technology-map-node>span{color:canvastext}.force-node:focus-visible:before,.local-graph-node:focus-visible:before,.technology-map-node:focus-visible:before{outline:2px solid highlight}}@media (max-width:760px){.force-node[data-label-tier=domain] .force-node-copy{opacity:0}.force-node[data-label-tier=domain]:hover .force-node-copy,.force-node[data-label-tier=domain]:focus-visible .force-node-copy,.force-node[data-label-tier=domain].is-selected .force-node-copy,.force-node[data-label-tier=domain].is-selection-related .force-node-copy{opacity:1}}.force-node.is-label-occluded:not(.is-selected):not(:hover):not(:focus-visible) .force-node-copy,.local-graph-node.is-label-occluded:not(.is-selected):not(:hover):not(:focus-visible) strong{opacity:0}.local-graph-edges line.is-system:not(.is-primary):not(.is-emphasised):not(.is-selected){opacity:.12}.local-graph-edges line.is-system.is-primary:not(.is-emphasised):not(.is-selected){opacity:.38}@media (prefers-reduced-motion:reduce){.technology-map-node,.technology-map line{transition:none}}.force-node{pointer-events:none}.force-node-marker{pointer-events:auto;position:absolute;top:50%;left:0;transform:translate(-50%,-50%)}.force-node[data-align=right] .force-node-marker{left:auto;right:0;transform:translate(50%,-50%)}.force-node:hover .force-node-marker,.force-node:focus-visible .force-node-marker,.force-node.is-selected .force-node-marker,.force-node.is-dragging .force-node-marker{transform:translate(-50%,-50%)scale(1.3)}.force-node[data-align=right]:hover .force-node-marker,.force-node[data-align=right]:focus-visible .force-node-marker,.force-node[data-align=right].is-selected .force-node-marker,.force-node[data-align=right].is-dragging .force-node-marker{transform:translate(50%,-50%)scale(1.3)}.force-node.is-selected:after{left:0;transform:translate(-50%,-50%)}.force-node[data-align=right].is-selected:after{left:auto;right:0;transform:translate(50%,-50%)}.force-node.is-project .force-node-name{color:color-mix(in srgb, var(--project-node-color,#dbc394) 48%, white)}.force-node.is-dimmed{opacity:.18}.local-graph-node{pointer-events:none}.local-graph-node>span{width:var(--local-node-size,6px);height:var(--local-node-size,6px);pointer-events:auto;position:absolute;top:50%;left:0;transform:translate(-50%,-50%)}.local-graph-node.is-project>span{width:var(--local-node-size,11px);height:var(--local-node-size,11px)}.local-graph-node[data-align=right]>span{left:auto;right:0;transform:translate(50%,-50%)}.local-graph-node:hover>span,.local-graph-node:focus-visible>span,.local-graph-node.is-emphasised>span,.local-graph-node.is-selected>span{transform:translate(-50%,-50%)scale(1.3)}.local-graph-node[data-align=right]:hover>span,.local-graph-node[data-align=right]:focus-visible>span,.local-graph-node[data-align=right].is-emphasised>span,.local-graph-node[data-align=right].is-selected>span{transform:translate(50%,-50%)scale(1.3)}.local-graph-node.is-dimmed{opacity:.2}.technology-map-node{pointer-events:none}.technology-map-node i{width:var(--map-node-size,6px);height:var(--map-node-size,6px);pointer-events:auto;cursor:grab;position:absolute;top:50%;left:0;transform:translate(-50%,-50%)}.technology-map-node>span{pointer-events:none;margin-left:4px}.technology-map-node[data-align=right] i{left:auto;right:0;transform:translate(50%,-50%)}.technology-map-node[data-align=right]>span{margin-left:0;margin-right:4px}.technology-map-node.is-project i{width:var(--map-node-size,10px);height:var(--map-node-size,10px);background:color-mix(in srgb, var(--project-node-color,#dbc394) 72%, white);box-shadow:0 0 4px #fff, 0 0 14px 4px rgba(var(--project-node-rgb,139,112,255),.42)}.technology-map-node:hover i,.technology-map-node:focus-visible i,.technology-map-node.is-selected i{transform:translate(-50%,-50%)scale(1.35)}.technology-map-node[data-align=right]:hover i,.technology-map-node[data-align=right]:focus-visible i,.technology-map-node[data-align=right].is-selected i{transform:translate(50%,-50%)scale(1.35)}.technology-map-node.is-selected:after{left:0;transform:translate(-50%,-50%)}.technology-map-node[data-align=right].is-selected:after{left:auto;right:0;transform:translate(50%,-50%)}.site-shell{color:#f1f0ee;background:#040509}.eyebrow,.catalogue,.quick-orbits>span{color:#e6ca92}.hero-line,.focus-intro{color:#ada89b}.graph-readout strong{color:#c9c5bd}.graph-readout>span:last-child,.hero-scroll{color:#5c616f}.readout-marker{border-color:#d9c08e;box-shadow:0 0 7px #d5b98161}.return-home,.focus-links a{color:#bfbbb1;border-color:#d5b98157}.focus-panel{scrollbar-color:#d5b9814d transparent;background:linear-gradient(90deg,#040509fb,#040509e6 82%,#0000)}.focus-intro,.focus-panel dd,.inline-entities button{color:#c2beb4}.focus-panel dt,.evidence-list>p,.focus-domain-grid p{color:#666b7b}.inline-entities button:not(:last-child):after{color:#575b69}.force-node-marker{background:#e2e0db;box-shadow:0 0 2px #ffffffbf}.force-node-marker:before{opacity:.24}.force-node.is-project .force-node-marker,.force-node.is-project[data-importance="5"] .force-node-marker{background:color-mix(in srgb, var(--project-node-color,#dbc392) 34%, white);box-shadow:0 0 3px #ffffffe0, 0 0 10px 2px rgba(var(--project-node-rgb,135,110,255),.16)}.force-node.is-project[data-importance="5"] .force-node-marker:before{border-color:rgba(var(--project-node-rgb,135,110,255),.18);box-shadow:none}.force-node:hover .force-node-marker,.force-node:focus-visible .force-node-marker,.force-node.is-selected .force-node-marker,.force-node.is-dragging .force-node-marker,.force-node.is-project:hover .force-node-marker,.force-node.is-project:focus-visible .force-node-marker,.force-node.is-project.is-selected .force-node-marker{box-shadow:0 0 4px #fff, 0 0 14px 4px rgba(var(--project-node-rgb,var(--accent-rgb)),.43), 0 0 32px 9px rgba(var(--project-node-rgb,var(--accent-rgb)),.08);background:#fff}.force-node.is-selected:after{border-color:#efddba61}.force-edges line{stroke:#6d7282;opacity:.11}.force-edges line.project-edge{stroke:#9d9788;opacity:.22}.force-edges line.domain-edge{stroke:#676c7c;opacity:.07}.force-edges line.is-selected{stroke:#ecd8af;opacity:.82}.project-showcase:after{opacity:.02}.project-system-grid .local-project-graph,.local-node-inspector{background:#07090eed;border-color:#ffffff17;box-shadow:inset 0 0 0 1px #ffffff03,0 22px 54px #0003}.local-project-graph.is-active{border-color:rgba(var(--project-accent-rgb),.2);box-shadow:0 22px 54px #00000038}.local-project-graph:before{opacity:.28}.local-graph-edges line{stroke:#c5c1b838;opacity:.3}.local-graph-edges line.is-region{stroke:rgba(var(--project-accent-rgb),.18);opacity:.22}.local-graph-edges line.is-emphasised,.local-graph-edges line.is-selected{stroke:var(--project-soft);opacity:.8}.local-graph-node:hover>span,.local-graph-node:focus-visible>span,.local-graph-node.is-emphasised>span{box-shadow:0 0 3px #fff, 0 0 12px 3px rgba(var(--project-accent-rgb),.38)}.local-graph-node.is-selected>span{box-shadow:0 0 4px #fff, 0 0 16px 4px rgba(var(--project-accent-rgb),.52), 0 0 34px 9px rgba(var(--project-accent-rgb),.08)}.local-node-inspector>header,.local-graph-heading{color:#666b7b}.inspector-object>i{box-shadow:0 0 3px #fff, 0 0 13px 3px rgba(var(--project-accent-rgb),.36)}.inspector-description{color:#b3ada2}.project-media-stage>header{border-color:#ffffff17}.project-visual-wrap{background:#06080d;box-shadow:0 20px 50px #00000047}.project-visual-wrap:after{box-shadow:none;border-color:#ffffff16}.project-media,.project-media-poster{background:#06080d}.project-media:after{background:linear-gradient(#04050914,#0000 18% 78%,#04050933)}.media-heading{color:#edece98a}.project-media .morph-slider-btn{background:#06080d9e;border-color:#ffffff2e;border-radius:2px}.media-state-list{color:#e8e7e366}.media-state-list button{color:#6d7282}.media-state-list button:hover,.media-state-list button.is-active{color:#f1e3c5}.technology-section{background:linear-gradient(#040509e6,#05070cf7)}.technology-explorer{grid-template-columns:minmax(0,2.05fr) minmax(300px,.72fr);gap:clamp(16px,1.8vw,28px)}.technology-map-shell,.technology-inspector{background:#07090ed6;border-color:#ffffff17}.technology-map{background:radial-gradient(circle at 50% 48%,#d5b98107,#0000 48%),#06080d;height:clamp(600px,67vh,720px)}.technology-map:before{opacity:.7;background-size:72px 72px}.technology-map line{stroke:#6f7586;stroke-width:.6px;opacity:.1}.technology-map line.is-project-link{stroke:#9e9889;opacity:.17}.technology-map line.is-idle{opacity:.1}.technology-map line.is-idle.is-project-link{opacity:.19}.technology-map line.is-active{stroke:#ecd8af;opacity:.58}.technology-map line.is-active.is-project-link{stroke:#efddba;opacity:.72}.technology-map line.is-dimmed{opacity:.016}.technology-map-regions span{color:#bdb9af2e}.technology-map-node i{background:#e2e0dc;box-shadow:0 0 2px #ffffffbf}.technology-map-node.is-project i{background:color-mix(in srgb, var(--project-node-color,#dbc392) 32%, white);box-shadow:0 0 3px #ffffffd1, 0 0 9px 2px rgba(var(--project-node-rgb,135,110,255),.15)}.technology-map-node.is-project>span{color:color-mix(in srgb, var(--project-node-color,#dbc392) 26%, #dcdad5)}.technology-map-node:hover i,.technology-map-node:focus-visible i,.technology-map-node.is-selected i,.technology-map-node.is-project:hover i,.technology-map-node.is-project:focus-visible i,.technology-map-node.is-project.is-selected i{box-shadow:0 0 3px #fff, 0 0 13px 3px rgba(var(--project-node-rgb,var(--accent-rgb)),.42);background:#fff}.technology-map-node.is-selected:after{border-color:#efddba6b}.technology-map-node.is-dimmed{opacity:.055}.technology-inspector{min-height:646px}.technology-inspector-object>i{box-shadow:0 0 3px #fff,0 0 12px 3px #d5b9815c}.technology-evidence button{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;display:grid}.technology-evidence button>span{gap:5px;display:grid}.technology-evidence strong{color:#d1cec6}.technology-evidence small{color:#6d7282;text-transform:none;font:11px/1.42 Inter,sans-serif}.technology-evidence em{color:#5a5e6b;font:10px/1.2 var(--font-label);white-space:nowrap;font-style:normal}.domain-filter-list button{padding:8px 0}.technology-accessible-index{margin-top:clamp(30px,4vw,48px)}.technology-accessible-index article{padding:18px 0}.technology-accessible-index article>p{gap:6px 13px;margin-top:11px}.experience-section,.about-section,.contact-section{background-color:#04060ae6}.experience-list article,.cv-line,.contact-register a{border-color:#ffffff14}.experience-period{color:#e7cd9a}@media (max-width:980px){.technology-explorer{grid-template-columns:minmax(0,1.55fr) minmax(275px,.65fr)}}@media (max-width:760px){.technology-explorer{grid-template-columns:1fr}.technology-map{height:540px}.technology-inspector{min-height:0}.technology-accessible-index>div{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:480px){.technology-map{height:500px}.technology-accessible-index>div{grid-template-columns:1fr}}.force-node:before,.local-graph-node:before,.technology-map-node:before{content:"";z-index:4;pointer-events:auto;cursor:grab;border-radius:50%;width:30px;height:30px;position:absolute;top:50%;left:0;transform:translate(-50%,-50%)}.force-node[data-align=right]:before,.local-graph-node[data-align=right]:before,.technology-map-node[data-align=right]:before{left:auto;right:0;transform:translate(50%,-50%)}.force-node-marker,.local-graph-node>span,.technology-map-node i,.force-node-copy,.local-graph-node strong,.technology-map-node>span{pointer-events:none}.force-node[data-label-tier=detail] .force-node-copy{opacity:0}.force-node[data-label-tier=domain] .force-node-copy{opacity:.52}.force-node[data-label-tier=project] .force-node-copy,.force-node[data-label-tier=core] .force-node-copy,.force-graph[data-zoom=near] .force-node-copy,.force-node:hover .force-node-copy,.force-node:focus-visible .force-node-copy,.force-node.is-selected .force-node-copy,.force-node.is-selection-related .force-node-copy{opacity:1}.force-graph[data-zoom=far] .force-node[data-label-tier=domain] .force-node-copy,.force-graph[data-zoom=far] .force-node[data-label-tier=detail] .force-node-copy,.local-graph-node[data-label-tier=detail] strong,.technology-map-node[data-label-tier=detail]>span{opacity:0}.local-graph-node strong,.technology-map-node>span{transition:opacity .2s,color .2s}.local-graph-node:hover strong,.local-graph-node:focus-visible strong,.local-graph-node.is-selected strong,.local-graph-node.is-selected-related strong,.local-graph-node.is-emphasised strong,.technology-map-node:hover>span,.technology-map-node:focus-visible>span,.technology-map-node.is-selected>span,.technology-map-node.is-related>span{opacity:1}.technology-map-shell>header{height:auto;min-height:46px;padding-block:9px}.technology-map-context{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex!important}.technology-map-shell>header .technology-map-context strong{color:#c5c2b9;font:600 10.5px/1 var(--font-label)}.technology-map-shell>header .technology-map-context button{color:#b4afa3;min-height:25px;font:600 10.5px/1 var(--font-label);cursor:pointer;background:#d5b9810b;border:1px solid #efddba33;padding:0 9px}.technology-map-shell>header .technology-map-context p{text-align:right;flex-basis:100%}.project-overline,.local-graph-heading,.local-graph-instruction,.technology-map-shell>header,.technology-inspector>header,.technology-accessible-index>header{font-size:11px}.force-node-name,.local-graph-node strong,.technology-map-node>span{color:#bfbbb1}.force-node-meta,.technology-map-regions span{color:#cfccc45c}.technology-evidence small{color:#9a9384;font-size:11px}.project-minglr{padding-bottom:clamp(108px,13vw,180px)}.project-agent-forge{padding-top:clamp(90px,11vw,150px);padding-bottom:clamp(78px,9vw,124px)}.project-4thspace{padding-top:clamp(68px,8vw,108px);padding-bottom:clamp(120px,14vw,190px)}.project-izrosh{padding-top:clamp(104px,12vw,164px)}.project-agent-forge .project-system-grid{grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr)}.project-4thspace .project-system-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.project-izrosh .project-system-grid{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr)}@media (max-width:760px){.force-node:before,.local-graph-node:before,.technology-map-node:before{width:32px;height:32px}.force-node[data-label-tier=domain] .force-node-copy{opacity:0}.force-node[data-label-tier=domain]:hover .force-node-copy,.force-node[data-label-tier=domain]:focus-visible .force-node-copy,.force-node[data-label-tier=domain].is-selected .force-node-copy,.force-node[data-label-tier=domain].is-selection-related .force-node-copy,.technology-explorer.is-map-expanded .technology-map-node>span{opacity:1}.technology-explorer.is-map-expanded .technology-map{height:680px}.technology-map-context{max-width:62%}.project-minglr,.project-agent-forge,.project-4thspace,.project-izrosh{padding-top:72px;padding-bottom:88px}.project-agent-forge .project-system-grid,.project-4thspace .project-system-grid,.project-izrosh .project-system-grid{grid-template-columns:1fr}}@media (forced-colors:active){.force-node-marker,.local-graph-node>span,.technology-map-node i{forced-color-adjust:auto;box-shadow:none;background:buttontext}.force-edges line,.local-graph-edges line,.technology-map line{stroke:canvastext;opacity:.55}.force-node-copy,.local-graph-node strong,.technology-map-node>span{color:canvastext}.force-node:focus-visible:before,.local-graph-node:focus-visible:before,.technology-map-node:focus-visible:before{outline:2px solid highlight}}:root{--night:#070b16;--plate:#0c1220;--plate-raised:#111828;--ink:#eee8da;--ink-soft:#bdb8ad;--ink-muted:#8d909a;--brass:#cfa65c;--brass-bright:#e6c98b;--brass-rgb:207,166,92;--hairline:#eee8da17;--hairline-strong:#eee8da29;--font-display:"Cormorant Garamond", "Iowan Old Style", "Palatino Linotype", Georgia, serif;--font-sans:"IBM Plex Sans Variable", "IBM Plex Sans", "Segoe UI", system-ui, sans-serif;--font-label:var(--font-sans);--font-data:"IBM Plex Mono", ui-monospace, Consolas, monospace;--ease-out:cubic-bezier(.16,1,.3,1);--accent:var(--brass);--accent-bright:var(--brass-bright);--accent-rgb:var(--brass-rgb);--field:var(--night);--line:var(--hairline);--line-strong:var(--hairline-strong);color:var(--ink);background:var(--night);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html{scrollbar-color:rgba(var(--brass-rgb),.35) var(--night);scroll-padding-top:84px}body,.site-shell{font-family:var(--font-sans);background:var(--night)}::selection{color:var(--night);background:var(--brass-bright)}input,textarea{caret-color:var(--brass-bright)}:focus-visible{outline:2px solid var(--brass-bright);outline-offset:4px;border-radius:2px}a{text-underline-offset:.2em;text-decoration-thickness:1px}button,a{touch-action:manipulation}h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}.data{font-family:var(--font-data);font-variant-numeric:tabular-nums;letter-spacing:0;font-size:.92em}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.icon{vertical-align:-.15em;flex:none}.starfield{z-index:-3;pointer-events:none;background:var(--night);transition:opacity 1.2s;position:fixed;inset:0;overflow:hidden;transform:translateZ(0)}.starfield canvas{display:block;position:absolute;top:0;left:0}.starfield-nebula{background:radial-gradient(60% 50% at 82% 16%, #4662aa33, transparent 70%), radial-gradient(40% 36% at 10% 90%, rgba(var(--brass-rgb),.07), transparent 72%), radial-gradient(34% 30% at 55% 58%, #5a78be0f, transparent 70%);position:absolute;inset:0}.starfield-near{animation:6s ease-in-out infinite alternate star-twinkle}@keyframes star-twinkle{0%{opacity:.5}to{opacity:1}}.starfield[data-mode=project],.starfield[data-mode=quiet]{opacity:.72}.starfield[data-mode=contact]{opacity:.85}.constellation-stage{transition:opacity .8s}.constellation-stage.is-passive,.site-shell[data-chapter-active] .constellation-stage.is-passive{opacity:.13;right:0}.site-shell[data-chapter-active=contact] .constellation-stage.is-passive{opacity:.22}.force-edges line{transition:opacity .3s}.topbar{border-bottom-color:var(--hairline);background:#070b16e0;height:68px}.wordmark{gap:12px}.wordmark-sigil{border:1px solid rgba(var(--brass-rgb),.45);width:32px;height:32px;color:var(--brass-bright);font:italic 600 15px/1 var(--font-display);letter-spacing:0;background:0 0;border-radius:50%;place-items:center;display:grid}.wordmark-title{color:var(--ink);font:600 19px/1 var(--font-display);letter-spacing:.005em;border-left:0;padding-left:0}.topbar nav a{color:var(--ink-soft);align-items:center;gap:5px;font-size:14px;font-weight:450;display:inline-flex}.topbar nav a:hover{color:var(--ink)}.topbar nav a:after{background:var(--brass)}.topbar nav a[href=\#contact]{border:1px solid rgba(var(--brass-rgb),.45);color:var(--brass-bright);border-radius:999px;padding:8px 16px}.topbar nav a[href=\#contact]:after{display:none}.topbar nav a[href=\#contact]:hover{border-color:var(--brass-bright);background:rgba(var(--brass-rgb),.1)}.hero{min-height:700px}.hero:before{box-shadow:none;border-color:#eee8da0d;border-radius:18px;inset:18px}.hero:after{background:radial-gradient(circle at 72% 48%,#0000 0 26%,#070b161a 58%,#070b1699 100%)}.hero-copy{width:min(580px,44vw);top:clamp(80px,13vh,150px)}.hero-copy:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(closest-side,#070b16eb,#070b1699 58%,#0000);position:absolute;inset:-90px -140px -90px -260px}.hero h1{color:var(--ink);font:600 clamp(76px, 9.4vw, 150px)/.86 var(--font-display);letter-spacing:-.02em;margin:0}.blur-text{display:inline-block}.blur-text-letter{animation:blur-in 1.1s var(--ease-out) var(--blur-delay,0s) both;display:inline-block}@keyframes blur-in{0%{opacity:0;filter:blur(14px);transform:translateY(.14em)}to{opacity:1;filter:blur();transform:none}}.hero-role{color:var(--brass-bright);font:italic 500 clamp(22px, 2vw, 28px)/1.2 var(--font-display);margin:22px 0 0}.hero .hero-line{max-width:44ch;color:var(--ink-soft);margin-top:18px;font-size:clamp(16px,1.25vw,18px);line-height:1.6}.hero-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:32px;display:flex}.button-primary,.button-ghost{height:46px;font:600 14.5px/1 var(--font-sans);cursor:pointer;transition:transform .25s var(--ease-out), background-color .2s ease, border-color .2s ease, color .2s ease;border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:0 20px;text-decoration:none;display:inline-flex}button.button-primary,a.button-primary:not(.star-border){color:var(--night);background:var(--ink);border:0}.button-ghost{border:1px solid var(--hairline-strong);color:var(--ink);background:#eee8da08}.button-ghost:hover{border-color:rgba(var(--brass-rgb),.6);background:rgba(var(--brass-rgb),.1);transform:translateY(-1px)}button.button-primary:hover{background:#fff;transform:translateY(-1px)}.star-border{background:rgba(var(--brass-rgb),.28);border-radius:999px;padding:1px;text-decoration:none;display:inline-flex;position:relative;overflow:hidden}.star-border.button-primary{height:auto;color:var(--night);padding:1px}.star-border-inner{z-index:1;border-radius:inherit;height:44px;color:var(--night);background:var(--ink);align-items:center;gap:10px;padding:0 20px;transition:background-color .2s;display:inline-flex;position:relative}.star-border:hover .star-border-inner{background:#fff}.star-border-light{z-index:0;opacity:.9;background:radial-gradient(circle, var(--brass-bright), transparent 12%);border-radius:50%;width:300%;height:60%;animation:5.5s linear infinite alternate star-light;position:absolute}.star-border-light-bottom{bottom:-14px;right:-250%}.star-border-light-top{animation-name:star-light-top;top:-14px;left:-250%}@keyframes star-light{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-100%)}}@keyframes star-light-top{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100%)}}.chart-key{border-top:1px solid var(--hairline);gap:10px;margin:40px 0 0;padding-top:20px;display:grid}.chart-key figcaption{color:var(--ink-muted);font-size:13px;font-weight:500}.chart-key ul{color:var(--ink-soft);flex-wrap:wrap;gap:8px 22px;margin:0;padding:0;font-size:14px;list-style:none;display:flex}.chart-key li{align-items:center;gap:8px;display:inline-flex}.chart-key svg{width:20px;height:20px;overflow:visible}.key-project{fill:#fff}.key-halo{fill:none;stroke:rgba(var(--brass-rgb),.55);stroke-width:1px}.key-technology{fill:var(--ink-soft)}.key-link{fill:none;stroke:var(--ink-muted);stroke-width:1.2px}.chart-key p{color:var(--ink-muted);margin:0;font-size:13px;line-height:1.5}.force-node-name{color:var(--ink-soft);font:450 12px/1.2 var(--font-sans);text-shadow:0 1px 8px var(--night)}.force-node.is-project .force-node-name,.force-node.is-project[data-importance="5"] .force-node-name{color:var(--ink);font:italic 600 18px/1 var(--font-display);text-transform:none;letter-spacing:.005em}.force-node.is-project[data-importance="1"] .force-node-name,.force-node.is-project[data-importance="2"] .force-node-name{color:var(--ink-soft);font-size:16px}.force-node.is-domain .force-node-name{color:var(--ink-muted);font:italic 450 12px/1 var(--font-sans)}.force-node-meta{color:var(--ink-muted);font:400 11px/1.3 var(--font-sans)}.force-node.is-meta-hidden .force-node-meta{display:none}.star-tooltip{z-index:9;border:1px solid rgba(var(--brass-rgb),.35);opacity:0;pointer-events:none;background:#0c1220f0;border-radius:10px;gap:3px;min-width:170px;max-width:250px;padding:10px 12px 11px;transition:opacity .15s;display:grid;position:absolute;top:0;left:0;box-shadow:0 14px 30px -12px #000000b3}.star-tooltip.is-visible{opacity:1}.star-tooltip strong{color:var(--ink);font:italic 600 19px/1.1 var(--font-display)}.star-tooltip>span{color:var(--brass-bright);font-size:12.5px}.star-tooltip>small{color:var(--ink-muted);font-size:12px}.star-reticle{z-index:8;opacity:0;pointer-events:none;--reticle-size:30px;width:0;height:0;transition:opacity .2s;position:absolute;top:0;left:0}.star-reticle.is-visible{opacity:1}.star-reticle i{border:0 solid rgba(var(--brass-rgb),.75);width:7px;height:7px;transition:border-color .2s;position:absolute}.star-reticle i:first-child{top:calc(var(--reticle-size) / -2);left:calc(var(--reticle-size) / -2);border-top-width:1.5px;border-left-width:1.5px}.star-reticle i:nth-child(2){top:calc(var(--reticle-size) / -2);right:calc(var(--reticle-size) / -2);border-top-width:1.5px;border-right-width:1.5px}.star-reticle i:nth-child(3){bottom:calc(var(--reticle-size) / -2);left:calc(var(--reticle-size) / -2);border-bottom-width:1.5px;border-left-width:1.5px}.star-reticle i:nth-child(4){bottom:calc(var(--reticle-size) / -2);right:calc(var(--reticle-size) / -2);border-bottom-width:1.5px;border-right-width:1.5px}.star-reticle.is-locked i{border-color:var(--brass-bright)}@media (pointer:fine){.force-graph.is-interactive,.force-graph.is-interactive .force-node,.force-graph.is-interactive .force-node:before{cursor:none}.force-graph .graph-view-controls button{cursor:pointer}}.click-spark{z-index:7;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.graph-view-controls{gap:6px}.graph-view-controls button{border:1px solid var(--hairline-strong);width:40px;height:40px;color:var(--ink);background:#0c1220db;border-radius:10px;place-items:center;padding:0;display:grid}.graph-view-controls button:hover{border-color:rgba(var(--brass-rgb),.6);color:var(--brass-bright)}.simulation-status{display:none}.section-heading h2{font:600 clamp(46px, 5.6vw, 84px)/.95 var(--font-display);letter-spacing:-.015em}.section-heading p{color:var(--ink-muted);margin-top:14px;font-size:16px}.project-overline{color:var(--brass-bright);font:500 14px/1.2 var(--font-sans);display:block}.project-overline .data{color:inherit}.inspector-object h4,.technology-inspector-object h3{color:var(--ink);font:italic 600 clamp(30px, 2.8vw, 42px)/.95 var(--font-display);letter-spacing:-.005em}.inspector-object p,.technology-inspector-object p{color:var(--brass-bright);font:500 13px/1.3 var(--font-sans)}.project-copy-block h3{font:600 clamp(56px, 6.4vw, 100px)/.9 var(--font-display);letter-spacing:-.015em}.project-lede{color:var(--ink-soft)}.project-copy-block dt{color:var(--ink-muted);font:500 13px/1.4 var(--font-sans)}.project-copy-block dd{color:var(--ink);font-size:15px}.project-actions{flex-wrap:wrap;gap:20px}.project-actions button,.project-actions a{border-bottom-color:rgba(var(--brass-rgb),.45);color:var(--ink);font:500 14px/1 var(--font-sans);align-items:center;gap:6px;display:inline-flex}.project-actions button:first-child{color:var(--brass-bright)}.project-media-stage>header span{color:var(--ink);font:italic 600 24px/1 var(--font-display)}.project-media-stage>header p{color:var(--ink-muted);font-size:14px}.local-graph-heading,.local-graph-instruction,.local-node-inspector>header,.technology-map-shell>header,.technology-inspector>header{color:var(--ink-muted);font-size:13px}.local-graph-node strong{font-size:12.5px}.local-graph-node.is-project strong{font:italic 600 17px/1 var(--font-display)}.experience-list h3{letter-spacing:-.01em;font-size:21px;font-weight:600}.experience-list h3 span{color:var(--brass-bright);font-size:15px}.experience-list article>p:not(.experience-period){color:var(--ink-soft);font-size:15px}.cv-line,.contact-register a{align-items:center}.about-copy p{color:var(--ink);font:500 clamp(30px, 3.6vw, 52px)/1.18 var(--font-display);letter-spacing:-.005em}.contact-register a{color:var(--ink-muted);font:500 14px/1 var(--font-sans);transition:padding-left .35s var(--ease-out), color .2s ease;padding:28px 0}.contact-register a strong{color:var(--ink);font:600 clamp(24px, 2.4vw, 34px)/1.1 var(--font-display)}.contact-register a:hover{color:var(--brass-bright);padding-left:12px}.contact-register a:hover strong{color:var(--brass-bright)}.supporting-projects header span{font:italic 600 26px/1 var(--font-display)}.supporting-projects>button strong{font:600 22px/1.1 var(--font-display)}.supporting-projects>button span{font-size:14.5px}.supporting-projects>button small,.quick-orbits>span,.universe-search label span{color:var(--ink-muted);font-size:13px}.quick-orbits button{font-size:13.5px}.universe-search input::placeholder{color:var(--ink-muted)}.return-home{align-items:center;gap:8px;font-size:14px;display:inline-flex}footer{color:var(--ink-muted);font:400 13px/1 var(--font-sans)}footer button{color:var(--ink-soft);align-items:center;gap:6px;display:inline-flex}.local-project-graph:after,.local-node-inspector:after,.technology-map-shell:after,.technology-inspector:after{content:"";z-index:0;pointer-events:none;border-radius:inherit;opacity:0;background:radial-gradient(320px circle at var(--spot-x,50%) var(--spot-y,50%), rgba(var(--brass-rgb),.09), transparent 70%);transition:opacity .35s;position:absolute;inset:0}.local-project-graph.is-lit:after,.local-node-inspector.is-lit:after,.technology-map-shell.is-lit:after,.technology-inspector.is-lit:after{opacity:1}.technology-map-shell,.technology-inspector{position:relative}.project-showcase,.experience-section,.technology-section,.about-section,.contact-section{content-visibility:auto}.project-showcase{contain-intrinsic-size:auto 1720px}.experience-section{contain-intrinsic-size:auto 765px}.technology-section{contain-intrinsic-size:auto 1580px}.about-section,.contact-section{contain-intrinsic-size:auto 705px}.project-visual-wrap{box-shadow:none;background:0 0}.project-visual-wrap:after,.project-media:after{display:none}.media-viewer{--media-accent:var(--brass);border:1px solid var(--hairline-strong);background:var(--plate);border-radius:14px;margin:0;overflow:hidden;box-shadow:0 40px 70px -40px #000000d9}.media-chrome{border-bottom:1px solid var(--hairline);justify-content:space-between;align-items:baseline;gap:14px;padding:12px 16px 10px;display:flex}.media-chrome-title{color:var(--ink);font:italic 600 18px/1.1 var(--font-display);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.media-chrome-title span{color:var(--ink-muted);font-style:normal}.media-chrome-count{color:var(--ink-muted);white-space:nowrap;font-size:13px}.media-stage{aspect-ratio:16/9;touch-action:pan-y;background:radial-gradient(90% 90% at 50% 35%, #101a30, var(--night) 75%);outline:none;position:relative;overflow:hidden}.media-stage:focus-visible{box-shadow:inset 0 0 0 2px var(--brass-bright)}.media-frame{opacity:0;width:100%;height:100%;transition:opacity .6s ease, transform 1s var(--ease-out);-webkit-user-select:none;user-select:none;-webkit-user-drag:none;position:absolute;inset:0;transform:scale(1.02)}.media-frame.is-active{opacity:1;transform:none}.media-frame.is-diagram{padding:3.5% 5%;object-fit:contain!important}.media-placeholder{background:linear-gradient(110deg,#0000 35%,#eee8da09 50%,#0000 65%) 0 0/220% 100%;animation:1.6s linear infinite media-shimmer}@keyframes media-shimmer{to{background-position:-220% 0}}.media-nav{z-index:8;width:42px;height:42px;color:var(--ink);opacity:0;transition:opacity .25s ease, transform .25s var(--ease-out), background-color .2s ease;cursor:pointer;background:#070b16cc;border:1px solid #eee8da2e;border-radius:50%;place-items:center;margin-top:-21px;display:grid;position:absolute;top:50%;transform:scale(.92)}.media-nav svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.media-nav:hover{background:rgba(var(--brass-rgb),.35)}.media-nav-prev{left:14px}.media-nav-next{right:14px}.media-stage:hover .media-nav,.media-stage:focus-within .media-nav{opacity:1;transform:none}@media (hover:none){.media-nav{opacity:.9;transform:none}}.media-caption{border-top:1px solid var(--hairline);background:var(--plate);gap:14px;padding:14px 16px 16px;display:grid}.media-caption-copy{flex-wrap:wrap;align-items:baseline;gap:6px 12px;display:flex}.media-caption p{color:var(--ink-soft);margin:0;font-size:15px;line-height:1.45}.media-source{color:var(--brass-bright);white-space:nowrap;font-size:13px;font-weight:500}.media-tabs{flex-wrap:wrap;gap:6px;display:flex}.media-tabs button{border:1px solid var(--hairline-strong);height:32px;color:var(--ink-soft);font:500 13px/1 var(--font-sans);cursor:pointer;background:0 0;border-radius:999px;padding:0 13px;transition:color .2s,background-color .2s,border-color .2s}.media-tabs button:hover{color:var(--ink);border-color:rgba(var(--brass-rgb),.5)}.media-tabs button.is-active{color:var(--night);background:var(--ink);border-color:#0000}.media-viewer.is-reduced .media-frame{transition:opacity .15s linear;transform:none}.media-viewer .ascii-resolve{z-index:6;color:rgba(var(--brass-rgb),.8);font-family:var(--font-data)}.focus-panel .media-viewer{width:min(540px,100%);margin-top:22px}.focus-panel .media-caption{padding:12px 14px 14px}.focus-panel .media-tabs button{height:28px;font-size:12.5px}.explore-bar,.star-preview{display:none}@media (max-width:760px){.mobile-menu-layer,.mobile-menu-panel{transition:transform .5s var(--ease-out)}.mobile-menu-layer{background:#16213a}.mobile-menu-panel{background:#070b16fa}.mobile-staggered-menu[data-open] .mobile-menu-layer{transform:none}.mobile-staggered-menu[data-open] .mobile-menu-panel{transition-delay:60ms;transform:none}.mobile-staggered-menu:not([data-open]) .mobile-menu-layer{transition-delay:80ms}.mobile-menu-panel a{grid-template-columns:1fr}.mobile-menu-label{font:600 clamp(38px, 12vw, 54px)/1 var(--font-display);transition:transform .6s var(--ease-out);transform:translateY(115%)rotate(4deg)}.mobile-staggered-menu[data-open] .mobile-menu-label{transition-delay:calc(.16s + var(--i,0) * 50ms);transform:none}.mobile-staggered-menu.is-reduced *,.mobile-staggered-menu.is-reduced{transition-duration:10ms!important;transition-delay:0s!important}.mobile-menu-toggle{font-size:14px;top:18px}.topbar{height:64px}.wordmark-title{font-size:18px}.hero{min-height:620px}.hero-copy{width:auto;top:64px;right:var(--page-x)}.hero-copy:before{background:radial-gradient(closest-side,#070b16d9,#070b168c 70%,#0000);inset:-60px -40px -40px -60px}.hero h1{font-size:clamp(64px,19vw,96px)}.hero-role{margin-top:16px;font-size:22px}.button-primary,.button-ghost{height:44px;padding:0 18px;font-size:14px}.star-border-inner{height:42px;padding:0 18px}.site-shell:not(.is-exploring) .force-graph .force-node:not(.is-selected):not(:focus-visible) .force-node-copy{opacity:0}.site-shell:not(.is-exploring) .graph-view-controls,.star-tooltip,.star-reticle{display:none}.media-caption{padding:14px}.media-chrome-title{font-size:16px}body.constellation-open{overscroll-behavior:none;overflow:hidden}.site-shell.is-exploring .hero-copy,.site-shell.is-exploring .graph-toolbar{visibility:hidden;opacity:0}.site-shell.is-exploring .constellation-stage{z-index:60}.site-shell.is-exploring .force-graph{touch-action:none}.site-shell.is-exploring .graph-view-controls{position:fixed;inset:76px 16px auto auto}.explore-bar{z-index:70;padding:14px max(16px, env(safe-area-inset-right,0px)) calc(14px + env(safe-area-inset-bottom,0px)) max(16px, env(safe-area-inset-left,0px));border-top:1px solid var(--hairline);background:#070b16f0;justify-content:space-between;align-items:flex-end;gap:14px;display:flex;position:fixed;bottom:0;left:0;right:0}.explore-bar .chart-key{border:0;gap:6px;min-width:0;margin:0;padding:0}.explore-bar .chart-key figcaption{display:none}.explore-bar .chart-key ul{gap:4px 14px;font-size:13px}.explore-bar .chart-key p{font-size:12.5px}.explore-done{flex:none}.star-preview{z-index:80;padding:20px max(18px, env(safe-area-inset-right,0px)) calc(18px + env(safe-area-inset-bottom,0px)) max(18px, env(safe-area-inset-left,0px));border-top:1px solid rgba(var(--brass-rgb),.4);background:var(--plate);animation:sheet-up .35s var(--ease-out);border-radius:18px 18px 0 0;gap:8px;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -24px 50px -20px #000c}.star-preview h2{color:var(--ink);font:italic 600 34px/1 var(--font-display);margin:0}.star-preview-kind{color:var(--brass-bright);margin:0;font-size:13.5px}.star-preview-copy{color:var(--ink-soft);margin:0;font-size:15px;line-height:1.5}.star-preview-meta{color:var(--ink-muted);margin:0;font-size:13px}.star-preview-actions{gap:10px;margin-top:8px;display:flex}@keyframes sheet-up{0%{transform:translateY(100%)}to{transform:none}}}@media (prefers-reduced-motion:reduce){.starfield-near,.media-placeholder,.star-border-light,.blur-text-letter,.star-preview{animation:none}.button-primary,.button-ghost,.contact-register a{transition:none}}.astrolabe{z-index:0;aspect-ratio:1;pointer-events:none;opacity:.5;width:min(86vh,52vw);transition:opacity .8s;position:absolute;top:50%;left:69%;transform:translate(-50%,-50%)}.constellation-stage.is-passive .astrolabe{opacity:0}.astrolabe svg{width:100%;height:100%;overflow:visible}.astrolabe-limb,.astrolabe-rete{transform-origin:0 0;transform-box:view-box;will-change:transform}.astrolabe-limb{animation:240s linear infinite astrolabe-turn}.astrolabe circle,.astrolabe line,.astrolabe path{fill:none;stroke:rgba(var(--brass-rgb),.32);stroke-width:1px}.astrolabe .astrolabe-limb>circle:first-child{stroke:rgba(var(--brass-rgb),.45)}.astrolabe-rete>circle:first-child{stroke-dasharray:2 6}.astrolabe .astrolabe-fill{fill:rgba(var(--brass-rgb),.5);stroke:none}.astrolabe text{fill:rgba(var(--brass-rgb),.55);font:italic 500 15px var(--font-display);letter-spacing:.06em}@keyframes astrolabe-turn{to{transform:rotate(360deg)}}.force-graph .force-node.is-technology .force-node-marker{background:var(--node-color);box-shadow:0 0 6px rgba(var(--node-rgb),.75)}.force-graph .force-node.is-project .force-node-marker,.force-graph .force-node.is-project[data-importance="5"] .force-node-marker{box-shadow:0 0 4px #fff, 0 0 14px 4px rgba(var(--node-rgb),.6), 0 0 38px 12px rgba(var(--node-rgb),.2);background:#fff}.force-graph .force-node.is-domain .force-node-name{color:var(--node-color);opacity:.75}.force-graph .force-node.is-project .force-node-meta{color:color-mix(in srgb, var(--node-color) 70%, var(--ink-muted))}.force-edges line{stroke-width:1px}.force-edges line.is-selected{opacity:.85;stroke-width:1.4px}.star-tooltip{border-color:rgba(var(--brass-rgb),.4)}.star-reticle:before{content:"";top:calc(var(--reticle-size) / -2);left:calc(var(--reticle-size) / -2);width:var(--reticle-size);height:var(--reticle-size);border:1px dashed rgba(var(--brass-rgb),.7);border-radius:50%;animation:8s linear infinite rune-spin;position:absolute}.star-reticle i{background:rgba(var(--brass-rgb),.85);width:5px;height:5px;transform:rotate(45deg);border:0!important}.star-reticle i:first-child{top:calc(var(--reticle-size) / -2 - 6px);left:-2.5px}.star-reticle i:nth-child(2){top:-2.5px;right:calc(var(--reticle-size) / -2 - 6px);left:auto}.star-reticle i:nth-child(3){bottom:calc(var(--reticle-size) / -2 - 6px);top:auto;left:-2.5px}.star-reticle i:nth-child(4){top:-2.5px;left:calc(var(--reticle-size) / -2 - 6px);bottom:auto;right:auto}.star-reticle.is-locked:before{border-style:solid;border-color:var(--brass-bright);animation-duration:3s}.star-reticle.is-locked i{background:var(--brass-bright)}@keyframes rune-spin{to{transform:rotate(360deg)}}.chart-key .key-domains{color:var(--ink-soft);gap:6px 16px;font-size:13px}.chart-key .key-domains li:before{content:"";background:var(--swatch);width:8px;height:8px;box-shadow:0 0 8px var(--swatch);border-radius:50%}.project-showcase:before{background:radial-gradient(circle, rgba(var(--project-accent-rgb),.13), rgba(var(--project-accent-rgb),.03) 42%, transparent 72%);opacity:1}.project-showcase .project-overline{color:var(--project-accent)}.project-showcase .project-actions button:first-child{color:var(--project-accent);border-bottom-color:rgba(var(--project-accent-rgb),.55)}.project-showcase .media-source,.project-showcase .media-chrome-count .data{color:var(--project-accent)}.project-showcase .media-tabs button.is-active{background:var(--project-accent);color:var(--night)}.project-showcase .media-viewer{border-color:rgba(var(--project-accent-rgb),.28)}.project-showcase .local-project-graph.is-active{border-color:rgba(var(--project-accent-rgb),.4)}.project-showcase .inspector-object p{color:var(--project-accent)}.supporting-projects>button strong:before{content:"";background:var(--project-accent);width:8px;height:8px;box-shadow:0 0 10px var(--project-accent);border-radius:50%;margin:0 12px .18em 0;display:inline-block}@media (max-width:760px){.astrolabe{opacity:.32;width:120vw;left:50%}}@media (prefers-reduced-motion:reduce){.astrolabe-limb,.astrolabe-rete,.star-reticle:before{animation:none}}.force-edges line{stroke:#eee8da99}.force-edges line.is-active{opacity:.14}.force-edges line.is-dimmed{opacity:.04}.force-edges line.is-lit,.force-edges line.is-selected{stroke:var(--edge-color);opacity:.9;stroke-width:1.3px}.force-graph .force-node.is-technology .force-node-marker{box-shadow:none;opacity:.85}.force-graph .force-node.is-technology.is-selection-related .force-node-marker,.force-graph.has-hover .force-node.is-technology:not(.is-dimmed) .force-node-marker{opacity:1;box-shadow:0 0 8px var(--node-color)}.force-graph .force-node.is-technology .force-node-copy,.force-graph .force-node.is-domain .force-node-copy,.force-graph .force-node.is-project .force-node-meta{opacity:0;transition:opacity .2s}.force-graph.has-hover .force-node:not(.is-dimmed) .force-node-copy,.force-graph.has-hover .force-node.is-project:hover .force-node-meta,.force-graph .force-node.is-selected .force-node-copy,.force-graph .force-node.is-selection-related .force-node-copy,.force-graph[data-zoom=near] .force-node.is-technology .force-node-copy{opacity:1}.force-graph.has-hover .force-node.is-project:not(.is-dimmed):not(:hover) .force-node-meta{opacity:0}.force-graph.has-hover .force-node.is-dimmed .force-node-copy{opacity:.25}.force-graph .force-node.is-project.is-dimmed .force-node-copy{opacity:.35}.astrolabe-rete{animation:none}:root{--ease-out:cubic-bezier(.23,1,.32,1);--ease-in-out:cubic-bezier(.77,0,.175,1);--ease-drawer:cubic-bezier(.32,.72,0,1);--radius-surface:4px;--text-sm:13px;--text-md:15px;--text-lg:18px;--text-xl:24px}.data{font-family:inherit;font-size:inherit;font-variant-numeric:tabular-nums}.media-viewer .ascii-resolve{font-family:var(--font-display)}.topbar,.content-section,.project-showcase,.project-copy-block dl div,.supporting-projects,.supporting-projects header,.supporting-projects>button,.experience-list,.experience-list article,.cv-line,.contact-register,.contact-register a,.chart-key,.graph-toolbar,.quick-orbits button,.media-viewer,.media-chrome,.media-caption,.project-media-stage>header,footer,.local-project-graph,.local-node-inspector,.technology-map-shell,.technology-inspector,.technology-map-shell>header,.technology-inspector>header,.local-node-inspector dl div,.technology-inspector dl div,.star-tooltip,.star-preview,.explore-bar,.focus-panel dl div,.universe-search input{border-color:#0000!important}.hero:before{display:none}.topbar{background:#070b16eb}.universe-search input{background:var(--plate);border-radius:999px;padding-inline:14px}.local-project-graph,.local-node-inspector,.technology-map-shell,.technology-inspector{isolation:isolate;border-radius:var(--radius-surface);position:relative;overflow:hidden;background:var(--plate)!important;box-shadow:none!important}.media-viewer{border-radius:var(--radius-surface);background:var(--plate);box-shadow:0 30px 60px -40px #000000e6}.media-chrome,.media-caption{background:var(--plate-raised)}.star-tooltip{border-radius:var(--radius-surface);background:var(--plate-raised)}.star-preview{border-radius:var(--radius-surface) var(--radius-surface) 0 0;background:var(--plate-raised)}.project-copy-block dl{gap:18px}.project-copy-block dl div{padding-top:0}.contact-register a{padding:18px 0}.experience-list article{padding:28px 0}.supporting-projects>button{padding:22px 0}.chart-key{margin-top:44px;padding-top:0}.topbar nav a,.project-actions button,.project-actions a,.media-tabs button,.button-primary,.button-ghost,.star-border-inner,.supporting-projects>button span,.chart-key ul,.media-caption p,.project-copy-block dd,.experience-list article>p:not(.experience-period),.star-preview-copy,.hero .hero-line,.section-heading p{font-size:var(--text-md)}.chart-key figcaption,.chart-key p,.project-overline,.project-copy-block dt,.media-source,.media-chrome-count,.star-tooltip>span,.star-tooltip>small,.local-graph-heading,.local-graph-instruction,.local-node-inspector>header,.technology-map-shell>header,.technology-inspector>header,.quick-orbits>span,.universe-search label span,.quick-orbits button,.supporting-projects>button small,footer,.star-preview-kind,.star-preview-meta,.project-media-stage>header p,.contact-register a{font-size:var(--text-sm)}.media-chrome-title,.star-tooltip strong,.experience-list h3 span{font-size:var(--text-lg)}.project-media-stage>header span,.supporting-projects header span,.supporting-projects>button strong{font-size:var(--text-xl)}.about-copy{max-width:40ch}.about-copy p{font:500 clamp(22px, 1.9vw, 27px)/1.4 var(--font-display);letter-spacing:0}.button-primary,.button-ghost,.star-border,.media-tabs button,.media-nav,.graph-view-controls button,.project-actions button,.quick-orbits button,.supporting-projects>button,.return-home,footer button,.topbar nav a[href=\#contact]{transition:transform .16s var(--ease-out), background-color .16s ease, border-color .16s ease, color .16s ease}.button-primary:active,.button-ghost:active,.star-border:active,.media-tabs button:active,.graph-view-controls button:active,.project-actions button:active,.quick-orbits button:active,.return-home:active,footer button:active,.topbar nav a[href=\#contact]:active{transform:scale(.97)}.media-nav:active{transform:scale(.94)}.supporting-projects>button:active{transform:scale(.99)}.button-ghost:hover,button.button-primary:hover{transform:none}@media not ((hover:hover) and (pointer:fine)){.button-ghost:hover{border-color:var(--hairline-strong);background:#eee8da08}.contact-register a:hover,.contact-register a:hover strong{color:inherit}}.contact-register a,.contact-register a:hover{padding-left:0;transition:color .16s}.contact-register a strong{transition:transform .2s var(--ease-out), color .16s ease}@media (hover:hover) and (pointer:fine){.contact-register a:hover strong{transform:translate(10px)}}.star-border-light{opacity:0;transition:opacity .2s;animation-play-state:paused}.star-border:focus-visible .star-border-light{opacity:.9;animation-play-state:running}@media (hover:hover) and (pointer:fine){.star-border:hover .star-border-light{opacity:.9;animation-play-state:running}}.media-frame{filter:blur(2px);transition:opacity .26s var(--ease-out), filter .26s var(--ease-out);transform:none}.media-frame.is-active{filter:none}.media-viewer.is-instant .media-frame{transition:none}.star-tooltip{transform-origin:0 0;transition:opacity .14s var(--ease-out), scale .14s var(--ease-out);scale:.97}.star-tooltip.is-visible{scale:1}@media (max-width:760px){.star-preview{animation:sheet-up .42s var(--ease-drawer)}}.local-project-graph:after,.local-node-inspector:after,.technology-map-shell:after,.technology-inspector:after{display:none}.spotlight-lamp{z-index:0;opacity:0;pointer-events:none;background:radial-gradient(circle, rgba(var(--brass-rgb),.1), transparent 65%);will-change:transform;border-radius:50%;width:560px;height:560px;transition:opacity .3s;position:absolute;top:-280px;left:-280px}.is-lit>.spotlight-lamp{opacity:1}.star-reticle{--reticle-size:30px}.star-reticle:before{border-style:solid;border-color:rgba(var(--brass-rgb),.6)}.starfield-nebula{background:radial-gradient(55% 45% at 84% 14%, #465ca029, transparent 70%), radial-gradient(40% 36% at 8% 92%, rgba(var(--brass-rgb),.06), transparent 72%)}.force-graph .force-node.is-technology .force-node-marker{background:var(--ink-soft);opacity:.7;box-shadow:none}.force-graph.has-hover .force-node.is-technology:not(.is-dimmed) .force-node-marker,.force-graph .force-node.is-technology.is-selection-related .force-node-marker{background:var(--node-color);opacity:1;box-shadow:0 0 8px var(--node-color)}.force-graph .force-node.is-domain .force-node-marker{background:var(--ink-muted)}.force-graph .force-node.is-project .force-node-marker,.force-graph .force-node.is-project[data-importance="5"] .force-node-marker{box-shadow:0 0 4px #fff, 0 0 12px 3px rgba(var(--node-rgb),.45), 0 0 30px 8px rgba(var(--node-rgb),.12)}.force-graph .force-node.is-project:hover .force-node-marker,.force-graph .force-node.is-project.is-selected .force-node-marker{box-shadow:0 0 4px #fff, 0 0 14px 4px rgba(var(--node-rgb),.6), 0 0 36px 10px rgba(var(--node-rgb),.18)}.force-graph .force-node.is-project .force-node-marker:before{border-color:rgba(var(--node-rgb),.3)}.local-graph-node>span{background:var(--ink-soft);box-shadow:none}.local-graph-node:hover>span,.local-graph-node.is-emphasised>span,.local-graph-node.is-selected>span{background:var(--node-color,var(--ink));box-shadow:0 0 6px var(--node-color,transparent)}.local-graph-node.is-project>span{box-shadow:0 0 4px #fff, 0 0 12px 3px rgba(var(--brass-rgb),.4);background:#fff}.technology-map-node.is-technology i{background:var(--ink-soft);box-shadow:none}.technology-map-node.is-technology:hover i,.technology-map-node.is-technology.is-related i,.technology-map-node.is-technology.is-selected i{background:var(--node-color);box-shadow:0 0 6px var(--node-color)}.technology-map-node.is-project i{box-shadow:0 0 4px #fff, 0 0 12px 3px rgba(var(--brass-rgb),.35)!important}.project-showcase:before{opacity:.45}.experience-list article{grid-template-columns:150px minmax(200px,.8fr) 1fr}.experience-period{color:var(--brass-bright);font-size:var(--text-sm)}@media (max-width:760px){.experience-list article{grid-template-columns:1fr;gap:8px}}.supporting-projects>button strong:before{background:var(--project-accent,var(--brass));box-shadow:none}.supporting-projects>button:hover strong,.supporting-projects>button:focus-visible strong{color:var(--project-accent,var(--brass-bright))}.local-graph-node.is-project>span{box-shadow:0 0 4px #fff, 0 0 12px 3px rgba(var(--project-accent-rgb,var(--brass-rgb)),.5)}.hero h1{letter-spacing:-.015em;font-weight:500}.section-heading h2,.project-copy-block h3{font-weight:500}.hero .hero-line{max-width:40ch}.astrolabe{opacity:.2}.astrolabe-rete{display:none}.chart-key{gap:8px;margin-top:36px}.chart-key ul{font-size:var(--text-sm);color:var(--ink-muted)}.chart-key p{max-width:48ch}.graph-view-controls button{width:34px;height:34px;color:var(--ink-soft);background:#0c1220b3;border-color:#0000}@media (hover:hover) and (pointer:fine){.force-graph .graph-view-controls{opacity:0;transition:opacity .2s var(--ease-out)}.force-graph:hover .graph-view-controls,.force-graph:focus-within .graph-view-controls{opacity:1}}.incantation{color:var(--brass-bright);font:italic 500 var(--text-lg)/1.35 var(--font-display);letter-spacing:.005em;margin:8px 0 0}.hero .hero-motif{color:var(--ink-soft);margin-top:6px;font-size:20px}.section-heading p.incantation{color:var(--brass-bright);font:italic 500 var(--text-lg)/1.35 var(--font-display);margin-top:6px}footer .incantation{font-size:var(--text-md);margin:0}.mobile-menu-panel>p span{color:var(--brass-bright);font-style:italic;font-family:var(--font-display);font-size:var(--text-lg)}@media (prefers-reduced-motion:reduce){.media-frame{filter:none;transition:opacity .15s linear}.star-tooltip{scale:1}.button-primary:active,.button-ghost:active,.star-border:active{transform:none}}
