@import "https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600;700;800&family=Inter:wght@400;500;600;700&display=swap";.noise{pointer-events:none;z-index:50;opacity:.035;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100' height='100'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}.scanlines{pointer-events:none;z-index:49;opacity:.5;background:repeating-linear-gradient(#ffffff03 0 1px,#0000 1px 3px);position:fixed;inset:0}nav{z-index:100;-webkit-backdrop-filter:blur(14px)saturate(140%);backdrop-filter:blur(14px)saturate(140%);border-bottom:1px solid var(--line);background:#07090bc7;position:fixed;top:0;left:0;right:0}.logo-image{width:32px;height:32px}.nav-inner{justify-content:space-between;align-items:center;height:64px;display:flex}.logo{font-family:var(--mono);letter-spacing:.01em;align-items:center;gap:10px;font-size:15px;font-weight:600;display:flex}.owl-mark{flex-shrink:0}.owl-mark .owl-body{fill:var(--bg-elevated);stroke:var(--line-bright);stroke-width:1.5px}.owl-mark .owl-eye-l{fill:var(--cyan)}.owl-mark .owl-eye-r{fill:var(--violet)}.logo-text{flex-direction:column;line-height:1.05;display:flex}.logo-text .brand{letter-spacing:.01em;font-size:14px;font-weight:700}.logo-text .tagline{color:var(--bone-faint);letter-spacing:.08em;font-size:9px;font-weight:400}@media (width<=480px){.logo-text .tagline{display:none}}.navlinks{font-family:var(--mono);color:var(--bone-dim);gap:32px;font-size:13px;display:flex}.navlinks a{padding-bottom:4px;position:relative}.navlinks a:after{content:"";background:var(--cyan);width:0;height:1px;transition:width .25s;position:absolute;bottom:0;left:0}.navlinks a:hover{color:var(--bone)}.navlinks a:hover:after{width:100%}.nav-cta{font-family:var(--mono);border:1px solid var(--cyan-dim);color:var(--cyan);border-radius:3px;padding:9px 18px;font-size:12px;transition:all .25s}.nav-cta:hover{background:var(--cyan);color:#06141a;box-shadow:0 0 24px var(--cyan-glow)}@media (width<=760px){.navlinks{display:none}}header{z-index:2;flex-direction:column;justify-content:center;min-height:100vh;padding-top:80px;display:flex;position:relative;overflow:hidden}.hero-bg{z-index:0;position:absolute;inset:0}.hero-glow{background:radial-gradient(ellipse 50% 45% at 50% 30%, var(--cyan-glow) 0%, transparent 65%);pointer-events:none;width:900px;height:700px;animation:12s ease-in-out infinite glowshift;position:absolute;top:-10%;left:50%;transform:translate(-50%)}.hero-glow-2{background:radial-gradient(circle, var(--violet-glow) 0%, transparent 70%);pointer-events:none;opacity:.6;width:600px;height:600px;animation:14s ease-in-out infinite reverse glowshift;position:absolute;top:5%;right:-10%}@keyframes glowshift{0%,to{transform:translate(-50%)scale(1)}50%{transform:translate(-48%,2%)scale(1.08)}}.hero-grid{opacity:.45;background-image:linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px);background-size:52px 52px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(65% 55% at 50% 25%,#000 0%,#0000 100%);mask-image:radial-gradient(65% 55% at 50% 25%,#000 0%,#0000 100%)}.circuit-svg{z-index:0;opacity:.85;pointer-events:none;position:absolute;inset:0}.circuit-line{fill:none;stroke:var(--cyan);stroke-width:1px;opacity:0;stroke-dasharray:6 420;stroke-dashoffset:420px;animation:2.8s ease-out forwards drawline,6s ease-in-out infinite fadeline}.circuit-line.violet{stroke:var(--violet)}.circuit-line:first-child{animation-delay:.2s,3s}.circuit-line:nth-child(2){animation-delay:.5s,4s}.circuit-line:nth-child(3){animation-delay:.8s,5s}.circuit-line:nth-child(4){animation-delay:1.1s,3.5s}@keyframes drawline{to{stroke-dashoffset:0;opacity:.5}}@keyframes fadeline{0%,to{opacity:.5}50%{opacity:.15}}.circuit-node{fill:var(--cyan);opacity:0;animation:.4s ease-out forwards nodepop}.circuit-node.violet{fill:var(--violet)}@keyframes nodepop{to{opacity:.8}}.eyebrow{font-family:var(--mono);color:var(--cyan);align-items:center;gap:10px;margin-bottom:26px;font-size:13px;display:flex}.dot{background:var(--cyan);border-radius:50%;flex-shrink:0;width:7px;height:7px;animation:2s infinite pulse;box-shadow:0 0 #4fd1c599}@keyframes pulse{0%{box-shadow:0 0 #4fd1c580}70%{box-shadow:0 0 0 7px #4fd1c500}to{box-shadow:0 0 #4fd1c500}}h1{font-family:var(--mono);letter-spacing:-.02em;max-width:850px;margin-bottom:24px;font-size:clamp(36px,6.4vw,68px);font-weight:800;line-height:1.05}h1 .accent{color:var(--cyan);text-shadow:0 0 30px var(--cyan-glow)}h1 .accent2{color:var(--violet);text-shadow:0 0 30px var(--violet-glow)}.sub{color:var(--bone-dim);max-width:580px;margin-bottom:42px;font-size:clamp(16px,2vw,19px);font-weight:400}.hero-ctas{flex-wrap:wrap;gap:14px;margin-bottom:60px;display:flex}.statusbar{font-family:var(--mono);border:1px solid var(--line-bright);background:linear-gradient(180deg, var(--bg-elevated), var(--bg-card));border-radius:8px;max-width:640px;padding:20px 22px;font-size:12.5px;box-shadow:0 20px 60px -20px #0009,inset 0 1px #ffffff08}.statusbar-head{color:var(--bone-faint);letter-spacing:.04em;border-bottom:1px solid var(--line);justify-content:space-between;margin-bottom:16px;padding-bottom:12px;font-size:11px;display:flex}.statusbar-head .lights{gap:6px;display:flex}.statusbar-head .lights span{background:var(--line-bright);border-radius:50%;width:8px;height:8px}.statusbar-head .lights span:first-child{opacity:.7;background:#e6555a}.statusbar-head .lights span:nth-child(2){opacity:.7;background:#e6c455}.statusbar-head .lights span:nth-child(3){opacity:.7;background:#4fd17a}.status-row{color:var(--bone-dim);justify-content:space-between;padding:6px 0;display:flex}.status-row b{color:var(--bone);font-weight:500}.status-ok{color:var(--cyan)}.status-ok-v{color:var(--violet)}.status-row .tag{align-items:center;gap:8px;display:flex}.tag .dot-sm{border-radius:50%;width:6px;height:6px}.status-prompt{border-top:1px solid var(--line);color:var(--cyan);align-items:center;gap:8px;margin-top:14px;padding-top:14px;display:flex}.status-prompt .caret{background:var(--cyan);width:7px;height:14px;animation:1s step-end infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}.scroll-cue{font-family:var(--mono);color:var(--bone-faint);flex-direction:column;align-items:center;gap:10px;font-size:11px;animation:2.4s ease-in-out infinite bob;display:flex;position:absolute;bottom:32px;left:50%;transform:translate(-50%)}@keyframes bob{0%,to{transform:translate(-50%)}50%{transform:translate(-50%,8px)}}.scroll-cue .line{background:linear-gradient(var(--cyan), transparent);width:1px;height:28px}.services-grid{background:var(--line);border:1px solid var(--line);border-radius:10px;grid-template-columns:repeat(3,1fr);gap:1px;display:grid;overflow:hidden}.service-card{background:var(--bg-card);padding:36px 30px;transition:background .3s;position:relative}.service-card:hover{background:var(--bg-card-hover)}.service-card .num{font-family:var(--mono);color:var(--line-bright);margin-bottom:20px;font-size:34px;font-weight:700;transition:color .3s}.service-card:hover .num{color:var(--cyan-dim)}.service-card h3{margin-bottom:11px;font-size:18.5px;font-weight:600}.service-card p{color:var(--bone-dim);font-size:14.5px}@media (width<=760px){.services-grid{grid-template-columns:1fr}}.filter-row{flex-wrap:wrap;gap:10px;margin-bottom:44px;display:flex}.filter-btn{font-family:var(--mono);border:1px solid var(--line-bright);color:var(--bone-dim);cursor:pointer;background:0 0;border-radius:20px;padding:9px 18px;font-size:12.5px;transition:all .25s}.filter-btn:hover{border-color:var(--bone-faint);color:var(--bone)}.filter-btn.active{border-color:var(--cyan);color:var(--cyan);background:var(--cyan-dim);box-shadow:0 0 20px -8px var(--cyan-glow)}.projects-grid{grid-template-columns:repeat(2,1fr);gap:22px;display:grid}@media (width<=760px){.projects-grid{grid-template-columns:1fr}}.project-card{border:1px solid var(--line);background:linear-gradient(160deg, var(--bg-card), var(--bg-elevated) 140%);border-radius:10px;padding:32px;transition:all .3s cubic-bezier(.2,.8,.2,1);position:relative;overflow:hidden}.project-card:before{content:"";background:linear-gradient(135deg, transparent 40%, var(--line-bright) 60%, transparent 80%);-webkit-mask-composite:xor;opacity:0;pointer-events:none;border-radius:10px;padding:1px;transition:opacity .3s;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.project-card[data-cat=dev]:before{background:linear-gradient(135deg, transparent 30%, var(--cyan) 55%, transparent 75%)}.project-card[data-cat=design]:before{background:linear-gradient(135deg, transparent 30%, var(--violet) 55%, transparent 75%)}.project-card:hover:before{opacity:.6}.project-card-glyph{font-family:var(--mono);color:#ffffff06;-webkit-user-select:none;user-select:none;pointer-events:none;font-size:90px;font-weight:700;line-height:1;transition:color .3s;position:absolute;top:-10px;right:-6px}.project-card:hover .project-card-glyph{color:#ffffff0b}.project-card:hover{border-color:#0000;transform:translateY(-3px);box-shadow:0 24px 50px -24px #00000080}.project-card[data-cat=dev]:hover{box-shadow:0 24px 50px -24px var(--cyan-glow)}.project-card[data-cat=design]:hover{box-shadow:0 24px 50px -24px var(--violet-glow)}.project-card.hidden{display:none}.project-tag{font-family:var(--mono);z-index:1;border-radius:20px;align-items:center;gap:6px;margin-bottom:20px;padding:5px 12px;font-size:11px;display:inline-flex;position:relative}.project-tag.dev{background:var(--cyan-dim);color:var(--cyan)}.project-tag.design{background:var(--violet-dim);color:var(--violet)}.project-card h3{z-index:1;margin-bottom:11px;font-size:20px;font-weight:600;position:relative}.project-card p{color:var(--bone-dim);z-index:1;margin-bottom:20px;font-size:14.5px;position:relative}.project-stack{z-index:1;flex-wrap:wrap;gap:8px;display:flex;position:relative}.stack-pill{font-family:var(--mono);color:var(--bone-faint);border:1px solid var(--line-bright);border-radius:3px;padding:4px 10px;font-size:11px;transition:border-color .2s,color .2s}.project-card:hover .stack-pill{border-color:var(--bone-faint);color:var(--bone-dim)}.process-list{flex-direction:column;gap:0;display:flex;position:relative}.process-list:before{content:"";background:var(--line);width:1px;position:absolute;top:0;bottom:0;left:15px}.process-item{align-items:flex-start;gap:30px;padding:30px 0;display:flex;position:relative}.process-item:not(:last-child){border-bottom:1px solid var(--line)}.process-num{font-family:var(--mono);color:var(--cyan);border:1px solid var(--cyan-dim);background:var(--bg);z-index:1;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;min-width:32px;height:32px;font-size:13px;display:flex;position:relative}.process-item h4{margin-bottom:7px;padding-top:4px;font-size:18px;font-weight:600}.process-item p{color:var(--bone-dim);max-width:480px;font-size:14.5px}.contact-layout{grid-template-columns:1fr 1.15fr;gap:64px;display:grid}@media (width<=820px){.contact-layout{grid-template-columns:1fr;gap:44px}}.contact-info p{color:var(--bone-dim);max-width:380px;margin-bottom:30px}.contact-detail{font-family:var(--mono);color:var(--bone-dim);align-items:center;gap:12px;margin-bottom:18px;font-size:13.5px;display:flex}.contact-detail .dot-sm{background:var(--cyan);width:6px;height:6px;box-shadow:0 0 8px var(--cyan-glow);border-radius:50%;flex-shrink:0}form{background:var(--bg-card);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:18px;padding:32px;display:flex;box-shadow:0 30px 60px -30px #00000080}.field label{font-family:var(--mono);color:var(--bone-faint);letter-spacing:.03em;margin-bottom:8px;font-size:12px;display:block}.field input,.field textarea,.field select{background:var(--bg-elevated);border:1px solid var(--line-bright);width:100%;color:var(--bone);font-family:var(--sans);border-radius:5px;padding:13px 14px;font-size:14.5px;transition:border-color .2s,box-shadow .2s}.field select{font-family:var(--sans);cursor:pointer}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--cyan);box-shadow:0 0 0 3px var(--cyan-glow);outline:none}.field textarea{resize:vertical;min-height:100px}.submit-btn{font-family:var(--mono);background:var(--cyan);color:#06141a;cursor:pointer;border:none;border-radius:5px;margin-top:6px;padding:16px;font-size:14px;font-weight:600;transition:all .25s}.submit-btn:hover{background:var(--cyan-bright);box-shadow:0 8px 30px -8px var(--cyan-glow);transform:translateY(-1px)}.submit-btn:disabled{opacity:.6;cursor:not-allowed}.form-note{font-family:var(--mono);color:var(--bone-faint);margin-top:2px;font-size:11.5px}footer{border-top:1px solid var(--line);font-family:var(--mono);color:var(--bone-faint);padding:36px 0;font-size:12.5px}.footer-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}footer a:hover{color:var(--cyan)}:root{--bg:#050708;--bg-elevated:#0e1215;--bg-card:#111519;--bg-card-hover:#151a1f;--line:#1c2227;--line-bright:#2d3540;--bone:#ece9e2;--bone-dim:#9aa0a6;--bone-faint:#565d63;--cyan:#4fd1c5;--cyan-bright:#8af0e3;--cyan-dim:#173532;--cyan-glow:#4fd1c538;--violet:#c77dff;--violet-bright:#e0b3ff;--violet-dim:#281d35;--violet-glow:#c77dff2e;--mono:"JetBrains Mono", "Space Mono", "Courier New", monospace;--sans:"Inter", -apple-system, BlinkMacSystemFont, sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--bone);font-family:var(--sans);line-height:1.6;overflow-x:hidden}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}a{color:inherit;text-decoration:none}::selection{background:var(--cyan-dim);color:var(--bone)}.wrap{z-index:2;max-width:1140px;margin:0 auto;padding:0 28px;position:relative}a:focus-visible,button:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.reveal{opacity:0;transition:opacity .7s cubic-bezier(.16,.8,.3,1),transform .7s cubic-bezier(.16,.8,.3,1);transform:translateY(24px)}.reveal.in{opacity:1;transform:translateY(0)}.reveal-stagger>*{opacity:0;transition:opacity .6s cubic-bezier(.16,.8,.3,1),transform .6s cubic-bezier(.16,.8,.3,1);transform:translateY(18px)}.reveal-stagger.in>*{opacity:1;transform:translateY(0)}section{z-index:2;border-top:1px solid var(--line);padding:130px 0;position:relative}.section-label{font-family:var(--mono);color:var(--cyan);letter-spacing:.08em;align-items:center;gap:10px;margin-bottom:16px;font-size:13px;display:flex}.section-label:before{content:"";background:var(--cyan);width:24px;height:1px}.section-title{font-family:var(--mono);letter-spacing:-.01em;max-width:700px;margin-bottom:20px;font-size:clamp(28px,4.2vw,42px);font-weight:700}.section-desc{color:var(--bone-dim);max-width:560px;margin-bottom:64px;font-size:16.5px}.btn{font-family:var(--mono);border-radius:4px;align-items:center;gap:8px;padding:15px 28px;font-size:14px;transition:all .25s cubic-bezier(.2,.8,.2,1);display:inline-flex}.btn-primary{background:var(--cyan);color:#06141a;font-weight:600}.btn-primary:hover{background:var(--cyan-bright);box-shadow:0 8px 30px -6px var(--cyan-glow);transform:translateY(-2px)}.btn-secondary{border:1px solid var(--line-bright);color:var(--bone)}.btn-secondary:hover{border-color:var(--bone-faint);background:var(--bg-elevated);transform:translateY(-2px)}
