@font-face{font-family:Onest;src:url('/assets/onest-400.woff') format('woff');font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Onest;src:url('/assets/onest-600.woff') format('woff');font-weight:600;font-style:normal;font-display:swap}
:root{--night:#070b12;--carbon:#101722;--paper:#f5f7f8;--ink:#111722;--muted:#68727f;--blue:#2f6bff;--warm:#ffb15c;--line:#cbd2da;--dark-line:#303a49;--content:1540px;--focus:#ffb15c}
*{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-color:#5f6d7e #0a0f17}body{margin:0;background:var(--night);color:#f7f9fc;font-family:Onest,Arial,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body::-webkit-scrollbar{width:12px}body::-webkit-scrollbar-track{background:#0a0f17}body::-webkit-scrollbar-thumb{background:#5f6d7e;border:3px solid #0a0f17}::selection{background:var(--blue);color:#fff}a{color:inherit}button,a{font:inherit}:where(a,button):focus-visible{outline:2px solid var(--focus);outline-offset:4px}.skip-link{position:fixed;left:16px;top:12px;z-index:1000;transform:translateY(-150%);background:#fff;color:#000;padding:10px 14px}.skip-link:focus{transform:none}
.site-header{height:76px;max-width:var(--content);margin:auto;padding:0 32px;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:38px;border-bottom:1px solid var(--dark-line);position:relative;z-index:30}.identity{display:flex;align-items:center;gap:14px;text-decoration:none;width:max-content}.identity-mark{width:42px;height:42px;display:grid;place-items:center;background:var(--paper);color:var(--ink);font-weight:600;letter-spacing:-.08em}.identity>span:last-child{display:grid}.identity strong{font-size:15px}.identity small{font:400 9px/1.4 ui-monospace,monospace;color:#8793a2;letter-spacing:.12em;text-transform:uppercase}.site-header nav{display:flex;gap:30px}.site-header nav a{font-size:13px;text-decoration:none;color:#cfd5dd}.site-header nav a:hover{color:#fff}.language{display:flex;border-left:1px solid var(--dark-line);padding-left:20px}.language button{border:0;background:none;color:#7f8b9a;padding:8px;cursor:pointer;font-size:11px}.language button[aria-pressed=true]{color:#fff;text-decoration:underline;text-underline-offset:5px;text-decoration-color:var(--warm)}.menu-button{display:none}
.hero{min-height:760px;max-width:var(--content);margin:auto;padding:86px 32px 70px;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(480px,.92fr);gap:48px;align-items:center}.hero-role,.section-heading>p,.repository-section header>p,.about-copy>p:first-child,.contact-section>p{font:600 11px/1 ui-monospace,monospace;letter-spacing:.18em;color:var(--warm)}.hero h1{margin:32px 0;font-size:clamp(67px,7.2vw,124px);font-weight:600;line-height:.84;letter-spacing:-.07em}.hero h1 span{display:block}.hero h1 span:nth-child(2){color:#a6b1bf}.hero-lead{max-width:690px;font-size:19px;line-height:1.62;color:#b9c3cf}.hero-actions{display:flex;gap:12px;margin-top:34px}.button{min-height:48px;padding:0 20px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border:1px solid #546171;font-size:13px}.button-primary{background:var(--blue);border-color:var(--blue);color:#fff}.button-primary:hover{background:#1d56df}.button-quiet:hover{border-color:#fff}.system-signature{align-self:stretch;min-height:600px;display:flex;flex-direction:column;justify-content:center;border-left:1px solid var(--dark-line);padding-left:36px}.system-signature svg{width:100%;height:auto;max-height:570px;overflow:visible}.map-orbits{stroke:#334154;stroke-width:1}.map-orbits circle:first-child{stroke-dasharray:2 8}.map-links{fill:none;stroke:#44546a;stroke-width:1}.map-node{fill:var(--warm)}.map-labels{fill:#8490a0;font:600 10px ui-monospace,monospace;letter-spacing:.14em}.map-core circle{fill:#0d1420;stroke:var(--blue);stroke-width:2}.map-core text:first-of-type{fill:#fff;font:600 72px Onest;letter-spacing:-.09em}.map-core text:last-of-type{fill:#8793a2;font:600 9px ui-monospace,monospace;letter-spacing:.15em}.system-signature>p{display:grid;gap:5px;margin:4px 0 0 22px}.system-signature>p span{font:600 10px ui-monospace,monospace;letter-spacing:.15em;color:var(--warm)}.system-signature>p strong{font-size:14px;font-weight:400}.map-node circle{transform-box:fill-box;transform-origin:center;animation:pulse 2.8s ease-in-out infinite}.map-node circle:nth-child(2){animation-delay:.7s}.map-node circle:nth-child(3){animation-delay:1.4s}.map-node circle:nth-child(4){animation-delay:2.1s}@keyframes pulse{0%,100%{opacity:.45;transform:scale(.75)}50%{opacity:1;transform:scale(1.25)}}
.evidence{max-width:var(--content);margin:auto;border-block:1px solid var(--dark-line);display:grid;grid-template-columns:repeat(4,1fr)}.evidence div{min-height:112px;padding:22px 32px;display:flex;flex-direction:column;justify-content:center;border-left:1px solid var(--dark-line)}.evidence div:first-child{border-left:0}.evidence strong{font-size:28px;letter-spacing:-.04em}.evidence span{margin-top:6px;color:#8d98a7;font-size:12px}
.projects-section{background:var(--paper);color:var(--ink);padding:110px max(32px,calc((100vw - var(--content))/2 + 32px))}.section-heading{display:grid;grid-template-columns:1.2fr .8fr;column-gap:60px;align-items:end;padding-bottom:42px;border-bottom:1px solid var(--line)}.section-heading>p{grid-column:1/-1;color:var(--blue);margin:0 0 22px}.section-heading h2{margin:0;font-size:clamp(48px,5.6vw,92px);line-height:.94;letter-spacing:-.055em;font-weight:600}.section-heading>span{max-width:520px;color:#59636f;font-size:16px;line-height:1.58}
.project{display:grid;grid-template-columns:minmax(330px,.38fr) minmax(0,.62fr);gap:44px;padding:42px 0;border-bottom:1px solid var(--line);align-items:stretch}.project-lead{padding-top:58px}.project-copy{display:flex;flex-direction:column;align-items:flex-start}.project-kind{font:600 10px/1 ui-monospace,monospace;letter-spacing:.15em;color:var(--blue);margin:0}.project h3{font-size:clamp(42px,5vw,76px);line-height:.92;letter-spacing:-.055em;margin:28px 0}.project-copy>p:not(.project-kind){font-size:16px;line-height:1.6;color:#424c58;max-width:520px}.project ul{display:flex;flex-wrap:wrap;gap:6px;padding:0;margin:24px 0;list-style:none}.project li{border:1px solid #aeb7c2;padding:7px 9px;font:600 9px/1 ui-monospace,monospace}.project-copy>a{margin-top:auto;padding-top:28px;text-decoration:none;font-size:13px;border-bottom:1px solid var(--blue)}.project-media{border:0;background:#111923;padding:18px;min-height:480px;display:grid;place-items:center;cursor:zoom-in;overflow:hidden}.project-media img{display:block;width:100%;height:100%;max-height:720px;object-fit:contain;transition:transform .45s ease}.project-media:hover img{transform:scale(1.012)}.project-reverse .project-copy{order:2}.project-reverse .project-media{order:1}.project-sequence .project{grid-template-columns:minmax(280px,.42fr) minmax(0,.58fr)}.project-sequence .project h3{font-size:clamp(38px,4vw,64px)}.project-sequence .project-media{min-height:520px}
.repository-section{background:#0d131d;color:#fff;padding:100px max(32px,calc((100vw - var(--content))/2 + 32px))}.repository-section header{display:grid;grid-template-columns:1fr auto;align-items:end;padding-bottom:30px}.repository-section header>p{grid-column:1/-1;margin:0 0 20px}.repository-section h2{font-size:clamp(42px,5vw,78px);line-height:1;letter-spacing:-.05em;margin:0}.repository-section header>a{font-size:13px;color:#b7c1ce}.repository-list{list-style:none;padding:0;margin:0;border-top:1px solid var(--dark-line);counter-reset:repo}.repository-list li{counter-increment:repo;display:grid;grid-template-columns:54px minmax(220px,.65fr) 1fr 32px;gap:22px;align-items:center;min-height:68px;border-bottom:1px solid var(--dark-line)}.repository-list li::before{content:counter(repo,decimal-leading-zero);font:600 10px ui-monospace,monospace;color:var(--warm)}.repository-list a{text-decoration:none;font-size:17px}.repository-list p{margin:0;color:#8f9aa8;font-size:13px}.repository-list span{font-size:19px;color:var(--blue)}.repository-list li:hover{background:#111b29}.repository-list li:hover a{color:#fff}
.about-section{background:var(--paper);color:var(--ink);display:grid;grid-template-columns:.75fr 1.25fr;min-height:760px}.about-name{background:var(--blue);color:#fff;display:flex;flex-direction:column;justify-content:center;padding:clamp(28px,3vw,54px);overflow:hidden;container-type:inline-size}.about-name span{font-size:clamp(54px,7.4vw,122px);font-size:clamp(54px,14cqw,122px);font-weight:600;line-height:.78;letter-spacing:-.075em;white-space:nowrap;max-width:100%}.about-name span:last-child{margin-left:clamp(24px,6cqw,64px);color:#070b12}.about-copy{max-width:820px;padding:110px 8vw}.about-copy>p:first-child{color:var(--blue)}.about-copy h2{font-size:clamp(48px,5vw,78px);line-height:.98;letter-spacing:-.055em;margin:28px 0 38px}.about-copy>p:not(:first-child){font-size:17px;line-height:1.72;color:#434e5a}.about-copy>a{display:inline-block;margin-top:20px;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--blue)}
.stack-section{background:#fff;color:var(--ink);padding:100px max(32px,calc((100vw - var(--content))/2 + 32px))}.stack-section .section-heading{grid-template-columns:1fr}.stack-grid{display:grid;grid-template-columns:repeat(4,1fr);border-left:1px solid var(--line)}.stack-grid article{min-height:300px;padding:30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.stack-grid span{font:600 9px ui-monospace,monospace;letter-spacing:.14em;color:var(--blue)}.stack-grid h3{font-size:26px;line-height:1.1;margin:50px 0 18px}.stack-grid p{color:#5d6773;font-size:14px;line-height:1.65}
.contact-section{min-height:620px;padding:105px max(32px,calc((100vw - var(--content))/2 + 32px));display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.contact-section h2{font-size:clamp(52px,7vw,112px);line-height:.9;letter-spacing:-.065em;max-width:1250px;margin:30px 0 42px}.contact-section>div{display:flex;gap:12px}.contact-section>span{margin-top:26px;color:#8793a2;font-size:13px}footer{max-width:var(--content);margin:auto;min-height:110px;padding:28px 32px;border-top:1px solid var(--dark-line);display:flex;align-items:center;justify-content:space-between;color:#8793a2;font-size:12px}footer a{text-decoration:none}
.image-dialog{width:min(1200px,calc(100vw - 48px));max-width:none;max-height:calc(100vh - 48px);padding:22px;background:#0c121b;color:#fff;border:1px solid #566477}.image-dialog::backdrop{background:#03060bd9}.image-dialog h2{font-size:17px;margin:0 52px 18px 0}.image-dialog img{display:block;width:100%;max-height:calc(100vh - 130px);object-fit:contain;background:#101722}.dialog-close{position:absolute;right:18px;top:14px;width:40px;height:40px;border:1px solid #5d6b7a;background:#0c121b;color:#fff;font-size:24px;cursor:pointer}
.js .reveal{opacity:0;transform:translateY(26px)}.js .reveal.visible{opacity:1;transform:none;transition:opacity .7s ease,transform .8s cubic-bezier(.2,.8,.2,1)}
@media(max-width:1050px){.site-header{grid-template-columns:1fr auto auto}.site-header nav{display:none;position:absolute;top:75px;left:24px;right:24px;padding:22px;background:#0d141e;border:1px solid var(--dark-line);flex-direction:column}.site-header nav.open{display:flex}.menu-button{display:flex;gap:10px;align-items:center;background:none;border:0;color:#fff;cursor:pointer}.menu-button i{width:18px;height:1px;background:#fff;box-shadow:0 5px #fff}.hero{grid-template-columns:1fr;padding-top:70px}.system-signature{border-left:0;border-top:1px solid var(--dark-line);padding:34px 0 0;min-height:0}.system-signature svg{max-height:520px}.evidence{grid-template-columns:1fr 1fr}.evidence div:nth-child(3){border-left:0;border-top:1px solid var(--dark-line)}.section-heading{grid-template-columns:1fr;gap:24px}.project,.project-sequence .project{grid-template-columns:1fr}.project-reverse .project-copy,.project-reverse .project-media{order:initial}.project-copy>a{margin-top:20px}.about-section{grid-template-columns:1fr}.about-name{min-height:420px}.stack-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.site-header{height:68px;padding:0 18px;gap:12px}.identity>span:last-child{display:none}.language{padding-left:8px}.site-header nav{top:67px;left:12px;right:12px}.hero{min-height:0;padding:62px 18px}.hero-role{font-size:9px;line-height:1.5}.hero h1{font-size:clamp(55px,18vw,80px);margin:24px 0;line-height:.86}.hero-lead{font-size:16px}.hero-actions{flex-direction:column}.system-signature{margin-top:24px}.system-signature>p{margin-left:0}.evidence{grid-template-columns:1fr}.evidence div,.evidence div:nth-child(3){border-left:0;border-top:1px solid var(--dark-line);padding-inline:18px}.evidence div:first-child{border-top:0}.projects-section,.repository-section,.stack-section,.contact-section{padding:70px 18px}.section-heading h2{font-size:48px}.project{padding:32px 0;gap:24px}.project h3,.project-sequence .project h3{font-size:43px;margin:22px 0}.project-media,.project-sequence .project-media{min-height:0;aspect-ratio:4/5;padding:10px}.repository-section header{grid-template-columns:1fr;gap:24px}.repository-list li{grid-template-columns:34px 1fr 24px;gap:10px;padding:15px 0}.repository-list p{grid-column:2/4}.about-name{min-height:330px;padding:24px}.about-copy{padding:72px 18px}.about-copy h2{font-size:48px}.stack-grid{grid-template-columns:1fr}.stack-grid article{min-height:230px}.contact-section{min-height:560px}.contact-section h2{font-size:54px}.contact-section>div{width:100%;flex-direction:column}footer{padding:28px 18px;align-items:flex-start;gap:16px;flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.map-node circle{animation:none}.js .reveal,.js .reveal.visible{opacity:1;transform:none;transition:none}.project-media img{transition:none}}
@media(forced-colors:active){*{forced-color-adjust:auto}.button,.project-media,.identity-mark{border:1px solid CanvasText}}
