*{box-sizing:border-box}:root{--accent:#2f5fd0;--bg:#e9e5db;--fg:#16181d;--muted:#4a505c;--muted2:#5b6270;--inkmut:#a7adba;--inkmut2:#8a91a3;--ink-accent:#6f8ce6;--grid:rgba(47,95,208,.045);--panel:rgba(255,255,255,.4);--bubble:#ffffff;--navbg:rgba(233,229,219,.78);--l1:rgba(22,24,29,.1);--l12:rgba(22,24,29,.12);--l14:rgba(22,24,29,.14);--l15:rgba(22,24,29,.15);--l2:rgba(22,24,29,.2);--l25:rgba(22,24,29,.25);--wl05:rgba(255,255,255,.05);--wl12:rgba(255,255,255,.12);--wl15:rgba(255,255,255,.15);--wl25:rgba(255,255,255,.25)}[data-theme=dark]{--bg:#14161b;--fg:#eceadf;--muted:#a7adba;--muted2:#8a91a3;--inkmut:#5b6270;--inkmut2:#6b7280;--ink-accent:#2f5fd0;--grid:rgba(111,140,230,.07);--panel:rgba(255,255,255,.035);--bubble:#242832;--navbg:rgba(20,22,27,.82);--l1:rgba(255,255,255,.08);--l12:rgba(255,255,255,.1);--l14:rgba(255,255,255,.12);--l15:rgba(255,255,255,.14);--l2:rgba(255,255,255,.18);--l25:rgba(255,255,255,.22);--wl05:rgba(22,24,29,.05);--wl12:rgba(22,24,29,.12);--wl15:rgba(22,24,29,.14);--wl25:rgba(22,24,29,.22)}html{scroll-behavior:smooth;max-width:100%;overflow-x:hidden;overflow-x:clip}body{margin:0;max-width:100%;overflow-x:hidden;overflow-x:clip;background:var(--bg);color:var(--fg);font-family:Space Grotesk,system-ui,sans-serif;-webkit-font-smoothing:antialiased;transition:background .4s ease,color .4s ease}#root,#pageRoot{width:100%;max-width:100%}img,svg{max-width:100%}.theme-toggle{transition:border-color .3s}.theme-toggle:hover{border-color:var(--muted2)}.cf-input{transition:border-color .25s,background .25s}.cf-input::placeholder{color:var(--inkmut2);opacity:1}.cf-input:focus{outline:none;border-color:var(--accent);background:var(--wl12)}textarea.cf-input{resize:vertical;min-height:118px;font-family:Space Grotesk,sans-serif}a{color:var(--accent);text-decoration:none}a:hover{color:#1f47a8}@keyframes fu{0%{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}@keyframes fus{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes blink{0%,55%{opacity:1}56%,to{opacity:0}}@keyframes dashmv{to{stroke-dashoffset:-64}}@keyframes flo{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes pipeflow{0%{top:-4px;opacity:0}10%{opacity:1}90%{opacity:1}to{top:100%;opacity:0}}.pipe-pulse{animation:pipeflow 3.4s cubic-bezier(.4,0,.2,1) infinite}@keyframes scan{0%{left:-42%}to{left:112%}}@keyframes epulse{0%,to{opacity:.35;transform:scale(1)}50%{opacity:1;transform:scale(1.3)}}@keyframes tdot{0%,80%,to{opacity:.2}40%{opacity:1}}.ll-scan{animation:scan 1.9s cubic-bezier(.4,0,.2,1) infinite}.ll-dot{animation:epulse 1.6s ease-in-out infinite}.ll-tdot{animation:tdot 1.4s ease-in-out infinite}@keyframes sheen{0%{top:-46px;opacity:0}12%{opacity:1}88%{opacity:1}to{top:100%;opacity:0}}.ll-sheen{animation:sheen 2.8s ease-in-out infinite}@keyframes orb{0%,to{transform:scale(1);opacity:.14}50%{transform:scale(1.18);opacity:.26}}.ll-orb{animation:orb 3.6s ease-in-out infinite}@keyframes wordup{0%{transform:translateY(115%)}to{transform:none}}@keyframes pkt{0%{offset-distance:0%;opacity:0}12%{opacity:1}88%{opacity:1}to{offset-distance:100%;opacity:0}}.pkt{animation:pkt 2.4s linear infinite}@keyframes npulse{0%,to{opacity:.35}50%{opacity:1}}.np{animation:npulse 1.8s ease-in-out infinite}@keyframes pktb{0%{offset-distance:0%;opacity:0}10%{opacity:1}52%{offset-distance:52%;opacity:1}64%{offset-distance:58%;opacity:0}to{offset-distance:58%;opacity:0}}.pktb{animation:pktb 2.6s linear infinite}@keyframes ubdot{0%{transform:translate(0);opacity:0}6%{opacity:1}32%{transform:translate(102px)}46%{transform:translate(102px)}54%{transform:translate(140px)}72%{transform:translate(230px);opacity:1}80%{transform:translate(230px);opacity:0}to{transform:translate(230px);opacity:0}}@keyframes ubgu{0%,38%{transform:translateY(0)}48%,66%{transform:translateY(-13px)}78%,to{transform:translateY(0)}}@keyframes ubgd{0%,38%{transform:translateY(0)}48%,66%{transform:translateY(13px)}78%,to{transform:translateY(0)}}@keyframes ubl1{0%,56%{transform:scaleX(0)}64%,90%{transform:scaleX(1)}98%,to{transform:scaleX(0)}}@keyframes ubl2{0%,62%{transform:scaleX(0)}70%,90%{transform:scaleX(1)}98%,to{transform:scaleX(0)}}@keyframes ubl3{0%,68%{transform:scaleX(0)}76%,90%{transform:scaleX(1)}98%,to{transform:scaleX(0)}}@keyframes llmtype{0%{width:0}34%{width:26ch}to{width:26ch}}@keyframes llb1{0%,36%{transform:scaleX(0)}48%,90%{transform:scaleX(1)}98%,to{transform:scaleX(0)}}@keyframes llb2{0%,44%{transform:scaleX(0)}56%,90%{transform:scaleX(1)}98%,to{transform:scaleX(0)}}@keyframes llb3{0%,52%{transform:scaleX(0)}64%,90%{transform:scaleX(1)}98%,to{transform:scaleX(0)}}@keyframes llres{0%,66%{opacity:0}74%,92%{opacity:1}to{opacity:0}}@keyframes kq{0%{opacity:0;transform:translateY(8px)}6%,90%{opacity:1;transform:none}97%,to{opacity:0;transform:translateY(8px)}}@keyframes kd{0%,10%{opacity:0}16%,40%{opacity:1}46%,to{opacity:0}}@keyframes ka{0%,46%{opacity:0;transform:translateY(8px)}54%,90%{opacity:1;transform:none}97%,to{opacity:0;transform:translateY(8px)}}@keyframes kc1{0%,58%{opacity:0;transform:scale(.5)}64%,90%{opacity:1;transform:scale(1)}97%,to{opacity:0}}@keyframes kc2{0%,64%{opacity:0;transform:scale(.5)}70%,90%{opacity:1;transform:scale(1)}97%,to{opacity:0}}.np-link{position:relative}.np-link:after{content:"";position:absolute;left:0;bottom:-3px;height:1px;width:0;background:var(--accent);transition:width .35s cubic-bezier(.2,.8,.2,1)}.np-link:hover:after{width:100%}.cs-panel{position:relative;transition:box-shadow .45s cubic-bezier(.2,.8,.2,1)}.cs:hover .cs-panel{box-shadow:0 22px 44px -22px #16181d59}.card-glare{position:absolute;inset:0;z-index:2;border-radius:inherit;pointer-events:none}.case-expand-btn,.project-mobile-link,.project-mobile-preview{display:none}.cs[data-animating=false] .cs-anim,.cs[data-animating=false] .pkt,.cs[data-animating=false] .np,.cs[data-animating=false] .ll-tdot{animation-play-state:paused!important}.bp-row{transition:background .3s,padding .35s}.bp-row:hover{background:#2f5fd00f;padding-left:12px;padding-right:12px}.bp-row:hover .bp-num{color:var(--accent)}.bp-num{transition:color .3s}.chip{transition:transform .3s,background .3s,color .3s,border-color .3s}.chip:hover{transform:translateY(-3px);background:var(--fg);color:var(--bg);border-color:var(--fg)}.bp-diag path,.bp-diag line{stroke-dasharray:6 6;animation:dashmv 2.6s linear infinite}.glow{transition:color .3s,transform .3s}.cta-btn{transition:box-shadow .35s}.cta-btn:hover{box-shadow:0 12px 26px -10px #2f5fd080}.ghost-btn{transition:background .3s,color .3s,border-color .3s}.ghost-btn:hover{background:var(--fg)!important;color:var(--bg)!important;border-color:var(--fg)!important}.mobile-menu{display:none;overflow:hidden;padding-left:clamp(22px,5vw,64px);padding-right:clamp(22px,5vw,64px);border-top:1px solid var(--l1);transform-origin:top}@media(max-width:900px){.nav-links{display:none!important}.mobile-menu-btn{display:block!important}.mobile-menu{display:block}}@media(max-width:720px){#heroDiag{display:none!important}.hero-ctas{gap:8px!important}.hero-ctas .cta-btn,.hero-ctas .ghost-btn{padding:10px 12px!important;font-size:11px!important;gap:6px!important}.cs .cs-text{order:1!important}.cs .cs-panel{order:2!important}.hero-intro{font-size:14px!important;line-height:1.5!important}.hero-diag-caption,.cs-outcome{display:none!important}.work-case{gap:18px!important}.work-case:not(.is-expanded) .cs-body{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}.project-card .project-body{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}.work-case:not(.is-expanded) .cs-tags{max-height:38px;overflow:hidden}.work-case:not(.is-expanded) .cs-panel{display:none!important}.work-case.is-expanded .cs-outcome{display:flex!important}.case-expand-btn{display:inline-flex;margin-top:18px;padding:9px 12px;border:1px solid var(--l25);border-radius:5px;background:transparent;color:var(--fg);font-family:JetBrains Mono,monospace;font-size:10.5px;letter-spacing:.3px;cursor:pointer}.project-card .cs-panel{display:none!important}.project-mobile-preview{display:block!important;height:96px;margin-top:16px;overflow:hidden;border:1px solid var(--wl25);border-radius:7px}.project-mobile-preview img{display:block;width:100%;height:100%;object-fit:cover}.project-mobile-link{display:inline-flex!important;margin-top:20px;padding:10px 13px;border:1px solid var(--wl25);border-radius:5px;color:var(--bg);font-family:JetBrains Mono,monospace;font-size:11px;letter-spacing:.3px}}@media(max-width:480px){.nav-inner{gap:10px!important}.nav-brand{gap:7px!important}.nav-actions{gap:10px!important}.nav-tagline{font-size:9px!important;letter-spacing:1px!important}}@media(max-width:360px){.nav-tagline{display:none}}@media(max-width:600px){.hero-ctas{gap:6px!important}.hero-ctas .cta-btn,.hero-ctas .ghost-btn{padding:10px!important;font-size:10px!important;letter-spacing:0!important}}.skip-link{position:absolute;top:0;left:0;background:var(--accent);color:#fff;padding:12px 24px;z-index:9999;font-weight:600;font-family:Space Grotesk,sans-serif;text-decoration:none;transform:translateY(-100%);transition:transform .2s ease}.skip-link:focus{transform:translateY(0);outline:2px solid var(--fg);outline-offset:2px}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}:focus:not(:focus-visible){outline:none}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}html{scroll-behavior:auto}[data-reveal]{opacity:1!important;transform:none!important;filter:none!important}}
