@font-face{font-family:Nozhik;src:url(/fonts/Nozhik.woff)format("woff");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:NewCMMono;src:url(/fonts/NewCMMono.woff)format("woff");font-weight:400;font-style:normal;font-display:swap}:root{--canvas:#171512;--canvas-light:#232019;--paper:#f3ecdd;--paper-dim:#e6ddc7;--ink:#1c1812;--orange:#ff5a2a;--cobalt:#2e4fe0;--yellow:#f2c230;--grain-opacity:.06}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--canvas);color:var(--paper);-webkit-font-smoothing:antialiased;margin:0;font-family:NewCMMono,monospace;overflow-x:hidden}img,svg{max-width:100%;display:block}h1,h2,h3{text-transform:uppercase;letter-spacing:.5px;margin:0;font-family:Nozhik,sans-serif;font-weight:400}.eyebrow{letter-spacing:.12em;text-transform:uppercase;background:var(--paper);color:var(--ink);padding:.35rem .8rem;font-family:NewCMMono,monospace;font-size:.78rem;display:inline-block;transform:rotate(-2deg);box-shadow:2px 3px #00000059}.grain{z-index:999;pointer-events:none;opacity:.5;mix-blend-mode:overlay;background-image:radial-gradient(#ffffff80 1px,#0000 1px),radial-gradient(#0006 1px,#0000 1px);background-position:0 0,2px 1px;background-size:3px 3px,5px 5px;position:fixed;inset:0}a{color:inherit}.wrap{max-width:1180px;margin:0 auto;padding:0 6vw}header{z-index:500;background:var(--canvas);border-bottom:3px solid var(--paper);position:sticky;top:0}.nav-strip{justify-content:space-between;align-items:center;padding:.9rem 6vw;display:flex}.logo{align-items:center;gap:.6rem;font-family:Nozhik,sans-serif;font-size:2rem;display:flex}.logo-mark{background:var(--orange);width:38px;height:38px;color:var(--ink);justify-content:center;align-items:center;font-family:Nozhik,sans-serif;font-size:2rem;display:flex;transform:rotate(90deg)}nav.links{gap:2rem;font-size:.95rem;display:flex}nav.links a{padding-bottom:3px;text-decoration:none;position:relative}nav.links a:after{content:"";background:var(--yellow);width:0;height:3px;transition:width .25s;position:absolute;bottom:0;left:0}nav.links a:hover:after{width:100%}.btn{background:var(--orange);color:var(--ink);border:2px solid var(--ink);box-shadow:4px 4px 0 var(--paper);cursor:pointer;padding:.65rem 1.3rem;font-size:.9rem;font-weight:700;text-decoration:none;transition:transform .15s,box-shadow .15s;display:inline-block}.btn:hover{box-shadow:6px 6px 0 var(--paper);transform:translate(-2px,-2px)}.btn:active{box-shadow:2px 2px 0 var(--paper);transform:translate(1px,1px)}.btn.ghost{color:var(--paper);border-color:var(--paper);box-shadow:4px 4px 0 var(--orange);background:0 0}.burger{cursor:pointer;background:0 0;border:none;flex-direction:column;gap:5px;display:none}.burger span{background:var(--paper);width:26px;height:3px}.lang-switch{background:var(--paper);border:2px solid var(--ink);cursor:pointer;box-shadow:3px 3px 0 var(--orange);align-items:center;gap:0;padding:2px;font-family:NewCMMono,monospace;display:flex;transform:rotate(-2deg)}.lang-option{color:var(--ink);padding:.3rem .55rem;font-size:.75rem;transition:background .2s,color .2s}.lang-option.active{background:var(--ink);color:var(--paper)}.hero{isolation:isolate;padding:4rem 0;position:relative;overflow:hidden}.hero:after{content:"";background:linear-gradient(to bottom, #17151200 0%, #17151226 20%, #17151273 45%, #171512cc 70%, var(--canvas) 100%);pointer-events:none;z-index:-1;height:220px;position:absolute;bottom:0;left:0;right:0}.hero-video{object-fit:cover;z-index:-3;opacity:.3;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.hero-overlay{z-index:-2;pointer-events:none;background:linear-gradient(#17151273,#171512b3),radial-gradient(circle at 20% 30%,#ff5a2a26,#0000 45%),radial-gradient(circle at 80% 70%,#2e4fe01f,#0000 40%);position:absolute;inset:0}.hero-inner{z-index:90;pointer-events:none;max-width:1180px;margin:0 auto;padding:0 6vw;position:relative}.hero-grid-layout{grid-template-columns:1.15fr .85fr;align-items:center;gap:4rem;width:100%;min-height:calc(85vh - 80px);display:grid}.hero-content-side{pointer-events:auto}.hero-game-side{pointer-events:auto;justify-content:flex-end;width:100%;display:flex}.hero .eyebrow{margin-bottom:1.6rem}.cut-title{flex-wrap:wrap;gap:.5rem .6rem;font-size:clamp(2.4rem,5.5vw,4.8rem);line-height:.98;display:flex}.cut-title .row{flex-wrap:wrap;gap:.5rem .6rem;width:100%;display:flex}.cut-title .row>span{transform:rotate(var(--r,-3deg));padding:.05em .18em;display:inline-block;box-shadow:3px 4px #0006}.cut-title .paper-tile{background:var(--paper);color:var(--ink)}.cut-title .orange-tile{background:var(--orange);color:var(--ink)}.cut-title .yellow-tile{background:var(--yellow);color:var(--ink)}.cut-title .cobalt-tile{background:var(--cobalt);color:var(--paper)}.cut-title .row>span:nth-child(odd){--r:-3deg}.cut-title .row>span:nth-child(2n){--r:2.5deg}.cut-title .row>span:nth-child(3n){--r:-1.5deg}.hero-sub{max-width:520px;color:var(--paper-dim);margin:2rem 0 2.4rem;font-size:1.1rem;line-height:1.55}.hero-cta{flex-wrap:wrap;gap:1rem;display:flex}.scroll-cue{color:var(--paper-dim);align-items:center;gap:.6rem;margin-top:3.2rem;font-family:NewCMMono,monospace;font-size:.8rem;display:flex}.scroll-cue .arrow{animation:1.6s ease-in-out infinite bob}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}section{padding:6.5rem 0;position:relative}.section-head{max-width:640px;margin-bottom:3.4rem}.section-head h2{margin-top:1rem;font-size:clamp(2rem,4.2vw,3.2rem);line-height:1.02}.section-head p{color:var(--paper-dim);margin-top:1rem;font-size:1.05rem;line-height:1.5}.reveal{opacity:0;transition:opacity .7s,transform .7s;transform:translateY(28px)rotate(-1deg)}.reveal.in-view{opacity:1;transform:translateY(0)rotate(0)}.services-grid{grid-template-columns:repeat(4,1fr);gap:1.6rem;display:grid}.service-card{background:var(--paper);color:var(--ink);border:2px solid var(--ink);padding:1.6rem 1.3rem 1.8rem;position:relative;box-shadow:6px 7px #0006}.service-card:first-child{transform:rotate(-2.5deg)}.service-card:nth-child(2){transform:rotate(1.5deg)}.service-card:nth-child(3){transform:rotate(-1deg)}.service-card:nth-child(4){transform:rotate(2.2deg)}.service-card:hover{z-index:5;transform:rotate(0)translateY(-4px);box-shadow:8px 10px #0006}.service-card{transition:transform .25s,box-shadow .25s}.service-num{background:var(--ink);color:var(--paper);margin-bottom:.8rem;padding:.2rem .5rem;font-family:NewCMMono,monospace;font-size:.75rem;display:inline-block}.service-card h3{margin-bottom:.6rem;font-size:1.25rem;line-height:1.05}.service-card p{color:#3a342a;font-size:.92rem;line-height:1.4}.service-icon{width:44px;height:44px;margin-bottom:.9rem}.filmstrip{background:var(--canvas-light);border-top:4px dashed var(--paper-dim);border-bottom:4px dashed var(--paper-dim);padding:2.6rem 0;position:relative}.sprockets{justify-content:space-around;align-items:center;height:22px;display:flex;position:absolute;left:0;right:0}.sprockets.top{top:-13px}.sprockets.bottom{bottom:-13px}.sprockets span{background:var(--canvas);border:2px solid var(--paper-dim);border-radius:2px;width:14px;height:14px}.process-row{grid-template-columns:repeat(4,1fr);gap:1.4rem;display:grid}.frame{background:var(--paper);color:var(--ink);border:2px solid var(--ink);padding:1.4rem;position:relative}.frame .fnum{color:var(--orange);-webkit-text-stroke:1.5px var(--ink);font-family:Nozhik,sans-serif;font-size:2.4rem}.frame h3{margin:.5rem 0;font-size:1.05rem}.frame p{color:#3a342a;font-size:.88rem;line-height:1.4}.portfolio-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}.clip{border:2px solid var(--paper);aspect-ratio:4/3;background:var(--canvas-light);width:100%;color:inherit;cursor:pointer;padding:0;display:block;position:relative;overflow:hidden}.clip .clip-bg{object-fit:cover;background-position:50%;background-size:cover;width:100%;height:100%;transition:transform .5s;position:absolute;inset:0}.clip:hover .clip-bg{transform:scale(1.08)}.clip .halftone{mix-blend-mode:multiply;opacity:.5;background-image:radial-gradient(#00000080 1px,#0000 1.3px);background-size:6px 6px;position:absolute;inset:0}.clip .tag{background:var(--paper);color:var(--ink);padding:.35rem .6rem;font-family:NewCMMono,monospace;font-size:.72rem;position:absolute;bottom:10px;left:10px;transform:rotate(-2deg);box-shadow:2px 3px #0006}.clip .play{background:var(--orange);border:2px solid var(--ink);border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;display:flex;position:absolute;top:10px;right:10px}.video-modal{z-index:1200;background:#171512db;justify-content:center;align-items:center;padding:6vw;display:none;position:fixed;inset:0}.video-modal.is-open{display:flex}.video-modal__dialog{background:var(--paper);width:min(1040px,100%);color:var(--ink);border:3px solid var(--ink);transform:rotate(-.6deg);box-shadow:10px 12px #00000073}.video-modal__bar{border-bottom:3px solid var(--ink);justify-content:space-between;align-items:center;gap:1rem;padding:.8rem 1rem;display:flex}.video-modal__title{text-transform:uppercase;letter-spacing:.05em;font-family:NewCMMono,monospace;font-size:.85rem}.video-modal__close{border:2px solid var(--ink);background:var(--orange);width:38px;height:38px;color:var(--ink);cursor:pointer;font:700 1.3rem/1 NewCMMono,monospace}.video-modal__video{background:#000;width:100%;max-height:76vh;display:block}body.modal-open{overflow:hidden}.testi-board{grid-template-columns:repeat(3,1fr);gap:2rem;display:grid}.testi{background:var(--paper);color:var(--ink);padding:1.8rem 1.5rem;font-family:NewCMMono,monospace;font-size:.95rem;line-height:1.5;position:relative;box-shadow:5px 6px #00000059}.testi:first-child{transform:rotate(-2deg)}.testi:nth-child(2){transform:rotate(1.5deg)}.testi:nth-child(3){transform:rotate(-1deg)}.testi:before{content:"";background:var(--orange);border:2px solid var(--ink);border-radius:50%;width:18px;height:18px;position:absolute;top:-11px;left:50%;transform:translate(-50%)}.testi .who{color:#3a342a;margin-top:1.2rem;font-family:NewCMMono,monospace;font-size:.85rem}.cta-stamp{background:var(--orange);color:var(--ink);text-align:center;border-top:6px solid var(--ink);border-bottom:6px solid var(--ink);padding:6rem 6vw}.cta-stamp h2{border:5px solid var(--ink);padding:.3em .5em;font-size:clamp(2.2rem,6vw,4.6rem);line-height:1;display:inline-block;transform:rotate(-2deg)}.cta-stamp p{margin:1.6rem 0 2rem;font-size:1.05rem}.cta-stamp .btn{background:var(--ink);color:var(--paper);box-shadow:5px 5px #00000059}.cta-stamp .btn:hover{box-shadow:7px 7px #00000059}footer{background:repeating-linear-gradient(-45deg, var(--canvas-light), var(--canvas-light) 12px, var(--canvas) 12px, var(--canvas) 24px);border-top:3px solid var(--paper);padding:3.2rem 6vw 2.4rem}.foot-grid{flex-wrap:wrap;justify-content:space-between;gap:2rem;display:flex}.foot-col h4{letter-spacing:.08em;color:var(--yellow);margin-bottom:.8rem;font-family:Special Elite,monospace;font-size:.8rem}.foot-col a{color:var(--paper-dim);margin-bottom:.5rem;font-size:.92rem;text-decoration:none;display:block}.foot-col a:hover{color:var(--paper)}.foot-bottom{color:#8b8474;flex-wrap:wrap;justify-content:space-between;gap:.6rem;margin-top:2.5rem;font-size:.78rem;display:flex}@media (max-width:900px){nav.links,.hero-cta .btn.ghost{display:none}.burger{display:flex}.services-grid,.process-row,.portfolio-grid,.testi-board{grid-template-columns:repeat(2,1fr)}.hero-grid-layout{grid-template-columns:1fr;gap:3rem;min-height:auto}.hero-game-side{justify-content:center}}@media (max-width:600px){.services-grid,.process-row,.portfolio-grid,.testi-board{grid-template-columns:1fr}.hero{padding:5rem 0 3rem}.cta-stamp h2{border-width:3px}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}html{scroll-behavior:auto}.reveal{opacity:1;transform:none}}:focus-visible{outline:3px solid var(--yellow);outline-offset:2px}.game-sandbox{background:var(--canvas-light);border:3px dashed var(--paper-dim);z-index:10;pointer-events:auto;border-radius:16px;width:100%;max-width:440px;height:480px;position:relative;overflow:hidden;box-shadow:0 10px 30px #00000040}.game-shape{z-index:2;filter:drop-shadow(4px 6px #00000059);cursor:pointer;touch-action:manipulation;animation:blobDrift var(--shape-duration,12s) ease-in-out infinite alternate;transform:translate(var(--dodge-x,0), var(--dodge-y,0));background:0 0;border:0;padding:0;transition:filter .2s,transform .18s;position:absolute}.game-shape:hover{filter:drop-shadow(6px 8px #00000073)saturate(1.08)}.game-shape svg{width:100%;height:100%;overflow:visible}.game-shape path{stroke:var(--ink);stroke-width:3.5px}.game-shape.is-pulsing svg{animation:1.35s ease-in-out infinite blobPulse}.game-bomb{z-index:3;cursor:pointer;touch-action:manipulation;filter:drop-shadow(4px 6px #00000059);pointer-events:auto;animation:bombLifeTime var(--bomb-duration,6s) ease-in-out forwards;background:url(/bomb.png) 50%/contain no-repeat;border:0;padding:0;position:absolute}.game-bomb:before{content:"💣";opacity:0;justify-content:center;align-items:center;width:100%;height:100%;font-size:2rem;display:flex}.game-bomb:hover{filter:drop-shadow(6px 8px #00000073)saturate(1.2)brightness(1.1)}.achievement-pop{z-index:7;pointer-events:none;background:var(--yellow);color:var(--ink);border:3px solid var(--ink);text-transform:uppercase;white-space:nowrap;padding:.65rem 1rem;font-family:Nozhik,sans-serif;font-size:clamp(1.3rem,3vw,2.2rem);animation:1.8s forwards achievementFade;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-2deg);box-shadow:6px 7px #00000073}.burst-particle{z-index:6;border:2.5px solid var(--ink);pointer-events:none;border-radius:999px;animation:.9s cubic-bezier(.01,.76,.18,1) forwards particleBurst;position:absolute;transform:translate(-50%,-50%)}.burst-particle.is-bomb-particle{background:#ff5a2a!important;border-width:3px!important;border-radius:0!important}.floating-xp{z-index:8;pointer-events:none;color:var(--paper);text-shadow:3px 3px 0 var(--ink), -2px -2px 0 var(--orange);font-family:Nozhik,sans-serif;font-size:clamp(1.4rem,4vw,2.6rem);animation:.95s ease-out forwards floatingXp;position:absolute;transform:translate(-50%,-50%)}.floating-xp.is-negative{color:#ff5a2a!important;text-shadow:3px 3px 0 var(--ink), -2px -2px 0 #2e4fe0!important}.xp-score{z-index:9;pointer-events:none;min-width:170px;color:var(--ink);border:3px solid var(--ink);background:#f3ecddf5;padding:.65rem .75rem;font-family:NewCMMono,monospace;position:absolute;bottom:1rem;right:1rem;transform:rotate(1.5deg);box-shadow:4px 5px #00000073}.xp-score span,.xp-score strong{display:block}.xp-score strong{color:var(--orange);-webkit-text-stroke:1px var(--ink);margin-top:.25rem;font-family:Nozhik,sans-serif;font-size:1.5rem}.xp-progress{background:var(--ink);border:2px solid var(--ink);height:8px;margin-top:.55rem;overflow:hidden}.xp-progress span{background:linear-gradient(90deg,var(--orange),var(--yellow));height:100%;display:block}@keyframes blobDrift{0%{transform:translate(var(--dodge-x,0), var(--dodge-y,0)) rotate(0deg) scale(1)}to{transform:translate(calc(var(--float-x,24px) + var(--dodge-x,0)), calc(var(--float-y,-18px) + var(--dodge-y,0))) rotate(var(--shape-rotate,12deg)) scale(1.04)}}@keyframes bombLifeTime{0%{opacity:0;transform:scale(0)rotate(0)}12%{opacity:1;transform:scale(1)rotate(5deg)}50%{transform:translate(calc(var(--float-x) * .5), calc(var(--float-y) * .5)) rotate(calc(var(--shape-rotate) * .5)) scale(1.05);opacity:1}70%{transform:translate(var(--float-x), var(--float-y)) rotate(var(--shape-rotate)) scale(1);opacity:1}72%{opacity:.15}76%{opacity:1}80%{opacity:.15}84%{opacity:1}88%{opacity:.15}92%{opacity:1}96%{opacity:.15}to{transform:translate(var(--float-x), var(--float-y)) rotate(var(--shape-rotate)) scale(0);opacity:0}}@keyframes blobPulse{0%,to{transform:scale(1)}50%{transform:scale(1.13)}}@keyframes achievementFade{0%{opacity:0;transform:translate(-50%,-35%)scale(.85)rotate(-5deg)}18%,70%{opacity:1;transform:translate(-50%,-50%)scale(1)rotate(-2deg)}to{opacity:0;transform:translate(-50%,-72%)scale(.96)rotate(2deg)}}@keyframes particleBurst{0%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(calc(-50% + var(--particle-x)), calc(-50% + var(--particle-y))) scale(.25)}}@keyframes floatingXp{0%{opacity:0;transform:translate(-50%,-40%)scale(.7)rotate(-4deg)}18%{opacity:1}to{opacity:0;transform:translate(-50%,-145%)scale(1.1)rotate(3deg)}}@media (max-width:900px){.game-sandbox{max-width:100%;height:380px}}@media (max-width:600px){.game-sandbox{height:320px}.xp-score{min-width:140px;bottom:.75rem;right:.75rem}.achievement-pop{top:50%}}
