@import "https://fonts.googleapis.com/css2?family=Geist:wght@400;600;700;800;900&family=Geist+Mono:wght@400;600;700;800&display=swap";:root{--paper:#f3eedc;--ink:#171914;--muted:#73756b;--acid:#c7ff00;--line:#171914b8;color:var(--ink);background:var(--paper);font-family:Geist Mono,ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:linear-gradient(#17191409 1px, transparent 1px), linear-gradient(90deg, #17191409 1px, transparent 1px), var(--paper);background-size:24px 24px;margin:0}a{color:inherit;text-decoration:none}.topbar{border:1px solid var(--line);background:color-mix(in srgb, var(--paper) 90%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:20;border-top:0;grid-template-columns:220px 1fr 72px;align-items:center;height:112px;padding-left:4.5vw;display:grid;position:sticky;top:0}.brand{border-inline:1px solid var(--line);flex-direction:column;justify-content:center;align-self:stretch;width:166px;padding:0 28px;display:flex}.brand strong{letter-spacing:-.09em;font:900 49px/.76 Geist,sans-serif}.brand span{letter-spacing:.34em;white-space:nowrap;text-transform:uppercase;margin-top:10px;font-size:11px}.topbar nav{justify-self:end;align-items:center;height:100%;display:flex}.topbar nav a{padding:44px 34px;font-size:15px;position:relative}.topbar nav a:after{content:"";background:var(--ink);transform-origin:0;height:2px;transition:transform .2s;position:absolute;bottom:30px;left:34px;right:34px;transform:scaleX(0)}.topbar nav a:hover:after,.topbar nav a:focus-visible:after{transform:scaleX(1)}.crosshair{border-left:1px solid var(--line);place-items:center;height:100%;font:34px Georgia,serif;display:grid}.hero{border-inline:1px solid var(--line);grid-template-columns:minmax(420px,40%) 1fr;min-height:calc(100vh - 166px);display:grid}.hero-copy{border-right:1px solid var(--line);padding:clamp(62px,7vw,110px) clamp(36px,5vw,78px)}.eyebrow,.section-kicker{color:var(--muted);letter-spacing:.2em;text-transform:uppercase;margin:0 0 30px;font-size:12px}.hero h1{text-transform:uppercase;letter-spacing:-.105em;transform-origin:0;margin:0;font:900 clamp(128px,15vw,240px)/.72 Geist,sans-serif;transform:scaleX(.82)}.hero-role{text-transform:uppercase;letter-spacing:-.07em;transform-origin:0;white-space:nowrap;margin:26px 0 20px;font:800 clamp(27px,3.1vw,50px)/1 Geist,sans-serif;transform:scaleX(.88)}.measure-line{align-items:center;gap:14px;max-width:510px;font-size:20px;display:flex}.measure-line i{background:var(--ink);flex:1;height:1px}.hero-lead{max-width:600px;margin:28px 0 34px;font-size:clamp(16px,1.45vw,21px);line-height:1.55}.primary-cta{border:2px solid var(--ink);background:var(--acid);text-transform:uppercase;justify-content:space-between;align-items:center;max-width:560px;height:76px;padding:0 30px;font-size:clamp(16px,1.5vw,22px);font-weight:800;transition:all .2s;display:flex;box-shadow:inset -8px -8px #ffffff47}.primary-cta b{font-size:40px;transition:transform .2s}.primary-cta:hover,.primary-cta:focus-visible{background:var(--ink);color:var(--acid);transform:translateY(-3px)}.primary-cta:hover b{transform:translate(8px)}.system-panel{border:2px solid var(--ink);clip-path:polygon(22px 0,calc(100% - 22px) 0,100% 22px,100% calc(100% - 22px),calc(100% - 22px) 100%,22px 100%,0 calc(100% - 22px),0 22px);min-width:0;margin:clamp(24px,3.8vw,60px);padding:clamp(72px,9vw,130px) clamp(28px,4vw,64px) 40px;position:relative}.online{background:var(--ink);color:var(--acid);padding:12px 16px;font-size:12px;position:absolute;top:20px;right:24px}.online i,.node-signal i,.footer-status i{background:var(--acid);width:10px;height:10px;box-shadow:0 0 12px var(--acid);border-radius:50%;margin-right:11px;animation:2s infinite pulse;display:inline-block}.system-flow{grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:18px;display:grid}.system-node{flex-direction:column;align-items:center;gap:13px;display:flex}.node-label{background:var(--ink);color:var(--acid);text-align:center;min-width:108px;padding:10px 20px}.node-box{aspect-ratio:1;border:2px solid var(--ink);width:min(100%,150px);box-shadow:4px 4px 0 var(--ink);background:#ffffff2b;place-items:center;display:grid;position:relative}.flow-arrow{font-size:30px}.node-signal{border:2px solid var(--ink);background:var(--ink);color:var(--paper);margin-top:6px;padding:7px 10px;font-size:11px}.web-box{border-color:var(--ink);grid-template-columns:repeat(3,1fr);align-content:start;padding:12px}.web-box:before{content:"";border-top:3px solid var(--acid);position:absolute;top:34px;left:0;right:0}.web-box i{background:var(--acid);border-radius:50%;width:8px;height:8px}.web-box b{color:var(--acid);place-items:center;font-size:38px;display:grid;position:absolute;inset:42px 0 0}.server-box{flex-direction:column;gap:10px;padding:30px 22px;display:flex}.server-box i{border:3px solid var(--acid);width:100%;height:18px;display:block}.device-box:before,.device-box:after{content:"";border-block:3px dashed var(--acid);position:absolute;inset:31px 48px}.device-box:after{border-block:0;border-inline:3px dashed var(--acid);inset:48px 31px}.device-box i{border:3px solid var(--acid);width:48px;height:48px}.terminal{background:var(--ink);color:var(--acid);border:3px double var(--paper);max-width:430px;margin:62px auto 0;padding:0 18px 18px;font-size:12px;line-height:1.65;box-shadow:8px 8px #1719142e}.terminal div{color:var(--paper);border-bottom:1px solid var(--paper);justify-content:space-between;margin-bottom:11px;padding:8px 0;display:flex}.terminal div i{border:2px solid var(--paper);width:13px;height:13px}.terminal p{margin:2px 0}.terminal b{background:var(--acid);width:8px;height:15px;margin-top:7px;animation:1s step-end infinite blink;display:block}.build-mark{border:1px solid var(--ink);padding:15px;font-size:12px;position:absolute;bottom:22px;right:22px}.hero-foot{border:1px solid var(--line);height:54px;color:var(--muted);letter-spacing:.14em;border-bottom:0;justify-content:space-between;align-items:center;padding:0 4.5vw;font-size:11px;display:flex}.section-index{writing-mode:vertical-rl;border-right:1px solid var(--line);letter-spacing:.16em;color:var(--muted);padding:40px 25px;font-size:11px;transform:rotate(180deg)}.about-section,.skills-section{border:1px solid var(--line);border-top:0;grid-template-columns:72px minmax(420px,.9fr) 1.1fr;min-height:620px;display:grid}.section-title{border-right:1px solid var(--line);padding:80px 5vw}.section-title h2{text-transform:uppercase;letter-spacing:-.07em;margin:0;font:800 clamp(45px,5.5vw,86px)/.9 Geist,sans-serif}.section-title h2 em,footer h2 em{color:#0000;-webkit-text-stroke:1.5px var(--ink);font-style:normal}.about-copy{flex-direction:column;justify-content:center;padding:90px 6vw 64px;display:flex}.about-copy p{max-width:700px;margin:0 0 28px;font-size:15px;line-height:1.65}.about-lead{letter-spacing:-.025em;font:600 clamp(22px,2.1vw,32px)/1.35 Geist,sans-serif}.about-facts{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);margin-top:35px;display:grid}.about-facts span{text-transform:uppercase;padding:23px 12px 0 0;font-size:11px}.about-facts b{color:var(--muted);margin-bottom:12px;display:block}.projects-section{border-inline:1px solid var(--line);background:var(--ink);color:var(--paper);padding:90px 4.5vw 110px}.section-header{justify-content:space-between;align-items:end;gap:30px;margin-bottom:52px;display:flex}.section-header h2{text-transform:uppercase;letter-spacing:-.09em;margin:0;font:900 clamp(72px,10vw,152px)/.76 Geist,sans-serif}.section-header>p{color:#aaa99f;font-size:13px;line-height:1.6}.projects-grid{border-top:1px solid #575950;border-left:1px solid #575950;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.project-card{border-bottom:1px solid #575950;border-right:1px solid #575950;grid-template-rows:auto 300px 1fr;min-height:650px;transition:background .25s,color .25s;display:grid}.project-card:hover{background:var(--paper);color:var(--ink)}.project-meta{color:#aaa99f;letter-spacing:.14em;text-transform:uppercase;border-bottom:1px solid #575950;justify-content:space-between;gap:18px;padding:18px 22px;font-size:10px;display:flex}.project-visual{background:repeating-linear-gradient(0deg,#0000,#0000 19px,#c7ff000b 20px),repeating-linear-gradient(90deg,#0000,#0000 19px,#c7ff000b 20px);border:1px solid #575950;margin:30px;position:relative;overflow:hidden}.project-copy{padding:10px 30px 36px}.project-copy h3{text-transform:none;letter-spacing:-.055em;margin:0 0 18px;font:750 clamp(32px,3.8vw,58px)/.95 Geist,sans-serif}.project-copy p{color:#aaa99f;max-width:610px;font-size:13px;line-height:1.6}.project-card:hover .project-copy p{color:#575950}.project-copy ul{flex-wrap:wrap;gap:8px;margin:24px 0 0;padding:0;list-style:none;display:flex}.project-copy li{text-transform:uppercase;letter-spacing:.1em;border:1px solid;padding:7px 10px;font-size:9px}.project-wide{grid-column:1/-1;grid-template-rows:auto 1fr;grid-template-columns:1.1fr .9fr;min-height:480px}.project-wide .project-meta{grid-column:1/-1}.project-wide .project-visual{min-height:350px}.project-wide .project-copy{align-self:center;padding:45px}.tow-visual:before{content:"";background:radial-gradient(circle at 20% 30%,#c7ff002e,#0000 17%);position:absolute;inset:0}.map-road{background:#77796c;width:120%;height:1px;display:block;position:absolute;top:42%;left:-10%;transform:rotate(-18deg)}.road-b{top:57%;transform:rotate(24deg)}.map-pin{background:var(--acid);width:38px;height:38px;color:var(--ink);border-radius:50% 50% 50% 0;place-items:center;font-size:20px;font-style:normal;display:grid;position:absolute;top:35%;left:23%;transform:rotate(-45deg)}.phone-card{border:2px solid var(--paper);background:var(--ink);width:38%;box-shadow:8px 8px 0 var(--acid);flex-direction:column;padding:25px;display:flex;position:absolute;top:13%;bottom:13%;right:9%}.phone-card b{font:700 23px Geist,sans-serif}.phone-card span{color:#aaa99f;margin-top:18px;font-size:11px}.phone-card strong{color:var(--acid);margin-top:auto;font-size:35px}.ozon-visual{grid-template-rows:40px 1fr;grid-template-columns:68px 1fr 104px;display:grid}.crm-top{border-bottom:1px solid #575950;grid-column:1/-1;gap:6px;padding:13px;display:flex}.crm-top i{background:var(--acid);border-radius:50%;width:8px;height:8px}.crm-side{border-right:1px solid #575950;flex-direction:column;gap:18px;padding:24px 18px;display:flex}.crm-side i{background:#77796c;height:7px}.crm-side i:first-child{background:var(--acid)}.crm-table{flex-direction:column;gap:13px;padding:24px;display:flex}.crm-table b{color:var(--acid);margin-bottom:5px}.crm-table span{letter-spacing:.1em;border:1px solid #575950;padding:8px 10px;font-size:9px;position:relative}.crm-table span:after{content:"OK";color:var(--acid);position:absolute;right:9px}.crm-stat{color:var(--acid);border-left:1px solid #575950;flex-direction:column;justify-content:center;align-items:center;gap:10px;font-size:10px;display:flex}.crm-stat i{background:var(--acid);width:12px;height:12px;box-shadow:0 0 13px var(--acid);border-radius:50%;animation:2s infinite pulse}.media-visual{grid-template-columns:1.3fr .7fr;gap:20px;padding:28px;display:grid}.scan-frame{border:1px solid var(--acid);color:var(--acid);flex-direction:column;justify-content:end;padding:18px;display:flex;position:relative}.scan-frame:before{content:"";background:var(--acid);height:2px;box-shadow:0 0 16px var(--acid);position:absolute;top:40%;left:8%;right:8%}.scan-frame b{margin-top:8px;font-size:40px}.check-log{color:var(--acid);border-left:1px solid #575950;flex-direction:column;justify-content:center;gap:24px;padding:22px;font-size:10px;display:flex}.tunnel-visual{color:var(--acid);justify-content:center;align-items:center;gap:22px;padding:35px;display:flex}.tunnel-node{border:2px solid var(--acid);text-align:center;padding:30px 24px;box-shadow:5px 5px #4f5400}.tunnel-node small{color:#aaa99f;margin-top:8px;display:block}.tunnel-visual p{font-size:9px;line-height:1.8;position:absolute;bottom:16px;left:22px}.iot-visual{justify-content:center;align-items:center;gap:28px;padding:40px;display:flex}.iot-visual span{border:2px solid var(--acid);background:var(--ink);text-align:center;color:var(--acid);padding:42px 34px;font-weight:800;box-shadow:6px 6px #4f5400}.iot-visual i{font-size:27px;font-style:normal}.skills-section{grid-template-columns:72px minmax(360px,.8fr) 1.2fr}.skills-list{padding:50px 0}.skill-row{border-bottom:1px solid var(--line);grid-template-columns:50px 1fr 1.5fr 56px;align-items:center;gap:18px;min-height:116px;padding:0 3vw;display:grid}.skill-row:first-child{border-top:1px solid var(--line)}.skill-row>span{color:var(--muted);font-size:11px}.skill-row h3{letter-spacing:-.04em;margin:0;font:700 28px Geist,sans-serif}.skill-row p{font-size:12px;line-height:1.5}.skill-row i{background:var(--ink);color:var(--acid);text-align:center;padding:10px 7px;font-size:10px;font-style:normal}.approach-section{border-inline:1px solid var(--line);background:var(--acid);padding:90px 4.5vw}.approach-section h2{text-transform:uppercase;letter-spacing:-.09em;margin:0 0 60px;font:900 clamp(74px,10vw,150px)/.76 Geist,sans-serif}.approach-flow{border-top:2px solid var(--ink);grid-template-columns:repeat(7,auto);align-items:start;display:grid}.approach-flow div{max-width:270px;padding:28px 20px 10px 0}.approach-flow h3{margin:22px 0 12px;font:700 22px Geist,sans-serif}.approach-flow p{margin:0;font-size:11px;line-height:1.55}.approach-flow>span{padding:72px 16px 0;font-size:30px}footer{background:var(--ink);color:var(--paper);border-inline:1px solid var(--ink);padding:100px 4.5vw 28px}.footer-status{color:var(--acid);letter-spacing:.15em;font-size:11px}footer h2{text-transform:uppercase;letter-spacing:-.09em;margin:34px 0;font:900 clamp(68px,11vw,170px)/.78 Geist,sans-serif}footer h2 em{-webkit-text-stroke-color:var(--paper)}footer>p{color:#aaa99f;max-width:760px;font-size:13px;line-height:1.65}.footer-bottom{letter-spacing:.14em;text-transform:uppercase;border-top:1px solid #575950;justify-content:space-between;margin-top:80px;padding-top:25px;font-size:10px;display:flex}.footer-bottom a{color:var(--acid)}@keyframes pulse{50%{opacity:.45;box-shadow:0 0 3px var(--acid)}}@keyframes blink{50%{opacity:0}}@media (width<=980px){.topbar{grid-template-columns:150px 1fr;padding-left:22px}.brand{border-left:0;width:135px;padding-left:15px}.topbar nav{display:none}.crosshair{grid-column:2;justify-self:end;width:64px}.hero{grid-template-columns:1fr}.hero-copy{border-right:0;border-bottom:1px solid var(--line);padding:64px 24px}.system-panel{min-height:600px;margin:18px}.about-section,.skills-section{grid-template-columns:54px 1fr}.section-title{border-right:0;border-bottom:1px solid var(--line)}.about-copy,.skills-list{grid-column:2}.projects-grid{grid-template-columns:1fr}.project-wide{grid-column:auto;grid-template-rows:auto 300px 1fr;grid-template-columns:1fr}.project-wide .project-meta{grid-column:auto}.project-wide .project-visual{min-height:0}}@media (width<=620px){.topbar{height:90px}.brand strong{font-size:40px}.hero-copy{padding-top:48px}.hero h1{font-size:37vw}.hero-role{white-space:normal;font-size:clamp(27px,8vw,46px)}.system-panel{padding:75px 22px 96px}.system-flow{grid-template-columns:1fr;gap:10px}.flow-arrow{line-height:1;transform:rotate(90deg)}.node-box{width:108px}.node-label{padding:7px 15px}.node-signal,.build-mark,.hero-foot span:nth-child(2),.section-index{display:none}.terminal{margin-top:30px}.hero-foot{padding:0 18px}.about-section,.skills-section{display:block}.section-title{padding:64px 22px}.about-copy{padding:55px 22px}.about-facts{grid-template-columns:1fr}.about-facts span{border-bottom:1px solid var(--line);padding:18px 0}.about-facts b{margin-right:15px;display:inline}.projects-section{padding:70px 18px}.section-header{flex-direction:column;align-items:start}.project-card{grid-template-rows:auto 230px 1fr;min-height:570px}.project-visual{margin:18px}.project-copy{padding:10px 18px 30px}.phone-card{width:52%;padding:16px}.phone-card b{font-size:17px}.media-visual{padding:16px}.check-log{padding:12px}.iot-visual{gap:9px;padding:12px}.iot-visual span{padding:27px 9px;font-size:9px}.iot-visual i{font-size:16px}.skill-row{grid-template-columns:32px 1fr 44px;gap:10px;padding:18px 20px}.skill-row p{grid-column:2/-1;margin:0}footer{padding:80px 20px 24px}.footer-bottom{align-items:flex-end;gap:20px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}
