@font-face{font-family:"Press Start 2P";font-style:normal;font-weight:400;font-display:swap;src:url(../media/cdf703449fd42bc8-s.3gh0it7uhdum8.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Press Start 2P";font-style:normal;font-weight:400;font-display:swap;src:url(../media/3f10656f33c57dec-s.1x_wmg1bpi7y6.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Press Start 2P";font-style:normal;font-weight:400;font-display:swap;src:url(../media/56eb15be423b6220-s.321_9ike18iql.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Press Start 2P";font-style:normal;font-weight:400;font-display:swap;src:url(../media/96074e70a40501da-s.1dfv6z-5f19bh.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Press Start 2P";font-style:normal;font-weight:400;font-display:swap;src:url(../media/de161955856a921d-s.p.0fxeqrss3ag9h.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Press Start 2P Fallback";src:local(Arial);ascent-override:44.58%;descent-override:0.0%;line-gap-override:0.0%;size-adjust:224.32%}.press_start_2p_dfd47942-module__5D1hmG__className{font-family:"Press Start 2P","Press Start 2P Fallback";font-style:normal;font-weight:400}.press_start_2p_dfd47942-module__5D1hmG__variable{--font-pixel:"Press Start 2P", "Press Start 2P Fallback"}
@font-face{font-family:Sarabun;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e9ed0bc71a38d6c1-s.p.2m2jj329378-j.woff2)format("woff2");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Sarabun;font-style:normal;font-weight:400;font-display:swap;src:url(../media/7062a58b1da0e8a4-s.1hwnmpdlfbr5r.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Sarabun;font-style:normal;font-weight:400;font-display:swap;src:url(../media/3d0c37763e1ee3aa-s.436q8r5--eamd.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Sarabun;font-style:normal;font-weight:400;font-display:swap;src:url(../media/a19976a16d351e92-s.p.41_1bbhnqcn3l.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Sarabun;font-style:normal;font-weight:600;font-display:swap;src:url(../media/a0529e96a7862c0d-s.p.3w1e23hf7mhof.woff2)format("woff2");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Sarabun;font-style:normal;font-weight:600;font-display:swap;src:url(../media/e1a185165aeb6b39-s.3_tzb9xzdxfhl.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Sarabun;font-style:normal;font-weight:600;font-display:swap;src:url(../media/aa5e8dae0d902b15-s.3sa03-u70a6zc.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Sarabun;font-style:normal;font-weight:600;font-display:swap;src:url(../media/22d7e241aeb09639-s.p.33ndw2snxq3le.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Sarabun;font-style:normal;font-weight:700;font-display:swap;src:url(../media/0bbfe7d70ca362ab-s.p.18qb6f14hcpif.woff2)format("woff2");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Sarabun;font-style:normal;font-weight:700;font-display:swap;src:url(../media/c9e7701bc8b3db09-s.2ckknpajidhx6.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Sarabun;font-style:normal;font-weight:700;font-display:swap;src:url(../media/fe9c9076d1cdc5cf-s.1kljupmg-52kq.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Sarabun;font-style:normal;font-weight:700;font-display:swap;src:url(../media/bcc136e7df79ae49-s.p.3vvwmya0_3z_s.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Sarabun Fallback;src:local(Arial);ascent-override:109.45%;descent-override:23.78%;line-gap-override:0.0%;size-adjust:97.58%}.sarabun_48979ca6-module__sChZYG__className{font-family:Sarabun,Sarabun Fallback;font-style:normal}.sarabun_48979ca6-module__sChZYG__variable{--font-sarabun:"Sarabun", "Sarabun Fallback"}
:root{--bg:#161616;--bg2:#232323;--neon:#e2231a;--neon2:#ff4538;--silver:#f5f5f5;--red:#e2231a;--gray:#aaa;--white:#f5f5f5;--grid-line:#e2231a38}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--white);font-family:var(--font-sarabun), "Sarabun", sans-serif;overflow-x:hidden}a{color:inherit}.pixel{font-family:var(--font-pixel), "Press Start 2P", monospace;letter-spacing:1px}.section-title{font-family:var(--font-sarabun), sans-serif;font-weight:700}@media (prefers-reduced-motion:reduce){.tv-rollbar,.tv-static,.scroll-hint{animation:none!important}*{scroll-behavior:auto!important}}body:before{content:"";z-index:80;pointer-events:none;mix-blend-mode:overlay;opacity:.35;background:repeating-linear-gradient(0deg,#0000001a 0 1px,#0000 1px 3px);position:fixed;inset:0}body:after{content:"";z-index:79;pointer-events:none;background:radial-gradient(#0000 65%,#0006 100%);position:fixed;inset:0}.hud{position:relative}.hud:before,.hud:after{content:"";border:2px solid var(--neon);opacity:0;width:14px;height:14px;transition:opacity .25s;position:absolute}.hud:before{border-bottom:none;border-right:none;top:6px;left:6px}.hud:after{border-top:none;border-left:none;bottom:6px;right:6px}.hud:hover:before,.hud:hover:after{opacity:1}header.site-header{z-index:50;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:linear-gradient(#0a0a0ae6,#0000);justify-content:space-between;align-items:center;padding:18px 48px;display:flex;position:fixed;top:0;left:0;right:0}.logo-mini{align-items:center;gap:10px;display:flex}.logo-mini .logo-chip{background:radial-gradient(circle at 35% 30%,#f5f5f5,#d8d8d8 70%);border:1px solid #e2231a80;border-radius:8px;justify-content:center;align-items:center;width:38px;height:38px;display:flex;box-shadow:0 0 14px #e2231a8c}.logo-mini svg{filter:drop-shadow(0 0 4px #e2231a66);width:24px;height:24px}.logo-mini span{font-size:13px}.site-nav ul{gap:34px;list-style:none;display:flex}.site-nav a{color:var(--gray);font-size:14px;text-decoration:none;transition:all .2s;position:relative}.site-nav a:hover{color:var(--neon);text-shadow:0 0 8px var(--neon)}.nav-cta{border:1px solid var(--silver);color:var(--silver);white-space:nowrap;padding:8px 18px;font-size:10px;transition:all .25s;display:inline-block}.nav-cta:hover{background:var(--silver);color:#141414;box-shadow:0 0 18px var(--silver)}.nav-toggle{border:1px solid var(--grid-line);cursor:pointer;background:0 0;flex-direction:column;justify-content:center;gap:5px;width:36px;height:36px;padding:0;display:none}.nav-toggle span{background:var(--white);height:2px;margin:0 7px;transition:all .25s;display:block}.nav-toggle.is-open span:first-child{transform:translateY(7px)rotate(45deg)}.nav-toggle.is-open span:nth-child(2){opacity:0}.nav-toggle.is-open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.mobile-nav{display:none}.hero{text-align:center;flex-direction:column;justify-content:flex-end;align-items:center;height:100vh;min-height:680px;padding-bottom:9vh;display:flex;position:relative;overflow:hidden}#voxel-canvas-wrap{z-index:0;position:absolute;inset:0}#voxel-canvas-wrap canvas{display:block}.tv-rollbar{z-index:1;pointer-events:none;mix-blend-mode:overlay;opacity:0;background:linear-gradient(#e2231a1f,#f5f5f50a 50%,#0000);height:70px;animation:14s ease-in-out infinite rollSweep;position:absolute;top:-90px;left:0;right:0}@keyframes rollSweep{0%,86%{opacity:0;top:-90px}88%{opacity:.4}95%{opacity:.35;top:104%}97%,to{opacity:0;top:104%}}.tv-static{z-index:4;pointer-events:none;mix-blend-mode:overlay;opacity:0;background:repeating-linear-gradient(0deg,#ffffff59 0,#0000 1px 3px),repeating-linear-gradient(90deg,#e2231a1a 0,#0000 1px 4px);animation:14s infinite tvStatic;position:absolute;inset:0}@keyframes tvStatic{0%,87.5%,to{opacity:0;transform:translate(0)}88%{opacity:.3;transform:translate(-2px)}88.5%{opacity:.1;transform:translate(1px,1px)}89%{opacity:0}95.5%{opacity:0}96%{opacity:.22;transform:translate(1px)}96.4%{opacity:0}}.hero-overlay{z-index:2;position:relative}.hero-card{-webkit-backdrop-filter:blur(10px);border:1px solid #e2231a4d;border-top:2px solid var(--neon);background:#060606b8;max-width:760px;margin:0 auto;padding:34px 44px 38px;box-shadow:0 20px 60px #0000008c}.hero-tag{color:var(--neon2);background:#e2231a14;border:1px solid #ff453866;margin-bottom:18px;padding:6px 14px;font-size:11px;display:inline-block}.hero h1{color:var(--white);text-shadow:0 2px #000,0 0 18px #e2231a66;font-size:clamp(26px,4.6vw,52px);line-height:1.3;position:relative}.hero h1 .smash{color:var(--neon);text-shadow:0 2px #000,0 0 16px #e2231acc}.hero p{color:var(--gray);max-width:560px;margin-top:22px;margin-left:auto;margin-right:auto;font-size:17px}.hero .ctas{justify-content:center;gap:18px;margin-top:34px;display:flex}.btn{cursor:pointer;clip-path:polygon(0 0,100% 0,100% 70%,90% 100%,0 100%);font-size:13px;font-family:var(--font-pixel), monospace;letter-spacing:1px;border:none;padding:14px 26px;text-decoration:none;transition:all .25s;display:inline-block}.btn-primary{background:var(--neon);color:#141414;box-shadow:0 0 22px #e2231a80}.btn-primary:hover{background:var(--neon2);box-shadow:0 0 30px var(--neon);transform:translateY(-2px)}.btn-ghost{border:1px solid var(--silver);color:var(--white);clip-path:none}.btn-ghost:hover{border-color:var(--silver);color:var(--silver);transform:translateY(-2px);box-shadow:0 0 16px #f5f5f540}.scroll-hint{color:var(--gray);z-index:2;font-size:10px;animation:2s infinite bob;position:absolute;bottom:28px;left:50%;transform:translate(-50%)}@keyframes bob{0%,to{transform:translate(-50%)}50%{transform:translate(-50%,8px)}}.section{max-width:1180px;margin:0 auto;padding:120px 48px;position:relative}.eyebrow{color:var(--neon);font-size:11px;font-family:var(--font-pixel), monospace;letter-spacing:1px;margin-bottom:14px}.eyebrow:before{content:"// ";color:var(--red)}h2.section-title{margin-bottom:18px;font-size:clamp(22px,3vw,34px);line-height:1.5}.lead{color:var(--gray);max-width:640px;font-size:15.5px;line-height:1.8}.services-grid{background:var(--grid-line);grid-template-columns:repeat(4,1fr);gap:2px;margin-top:60px;display:grid}.service-card{background:var(--bg2);padding:36px 24px;transition:all .3s;position:relative;overflow:hidden}.service-card:before{content:"";background:linear-gradient(transparent 92%, var(--grid-line) 92%) 0 0 / 100% 12px;opacity:0;transition:all .3s;position:absolute;inset:0}.service-card:hover{background:#1c1414;transform:translateY(-6px)}.service-card:hover:before{opacity:1}.service-card:hover .service-icon{box-shadow:0 0 22px var(--silver);background:var(--silver);color:var(--neon)}.service-icon{background:var(--neon);width:44px;height:44px;color:var(--white);clip-path:polygon(20% 0,80% 0,100% 20%,100% 80%,80% 100%,20% 100%,0 80%,0 20%);justify-content:center;align-items:center;margin-bottom:22px;transition:all .3s;display:flex;box-shadow:0 0 16px #e2231a80}.service-card h3{margin-bottom:10px;font-size:15px}.service-card p{color:var(--gray);font-size:13px;line-height:1.7}.stats{border:1px solid var(--grid-line);gap:0;margin-top:60px;display:flex}.stat{text-align:center;border-right:1px solid var(--grid-line);flex:1;padding:40px 10px;transition:all .25s;position:relative}.stat:last-child{border-right:none}.stat:before{content:"★";color:var(--silver);text-shadow:0 0 10px var(--silver);margin-bottom:10px;font-size:13px;display:block}.stat:hover{background:#e2231a0f}.stat .num{color:var(--neon);text-shadow:0 0 18px #e2231a80;font-size:clamp(30px,4vw,46px);font-family:var(--font-pixel), monospace}.stat .label{color:var(--gray);letter-spacing:1px;margin-top:10px;font-size:12px}.vm-grid{background:var(--grid-line);grid-template-columns:1fr 1fr;gap:2px;margin-top:60px;display:grid}.vm-card{background:var(--bg2);padding:40px}.vm-card .tag{color:var(--silver);text-shadow:0 0 8px #f5f5f54d;font-size:11px;font-family:var(--font-pixel), monospace;letter-spacing:1px;margin-bottom:14px}.vm-card p{color:var(--gray);font-size:14.5px;line-height:1.8}.logo-wall{background:var(--grid-line);grid-template-columns:repeat(6,1fr);gap:2px;margin-top:60px;display:grid}.logo-tile{background:var(--white);aspect-ratio:1.4;color:var(--gray);justify-content:center;align-items:center;padding:18px;font-size:11px;transition:all .25s;display:flex}.logo-tile:hover{transform:translateY(-3px);box-shadow:0 0 18px #e2231a73}.contact{grid-template-columns:1fr 1fr;align-items:start;gap:60px;margin-top:60px;display:grid}.contact-info p{color:var(--gray);margin-bottom:14px;font-size:14.5px;line-height:1.7}.contact-info b{color:var(--white)}.map-block{background:var(--bg2);border:1px solid var(--grid-line);padding:14px;transition:all .25s;display:block;box-shadow:inset 0 0 0 1px #0006}.map-block:hover{border-color:#e2231a80;transform:translateY(-2px);box-shadow:0 0 24px #e2231a40}.site-footer{text-align:center;color:var(--gray);border-top:1px solid var(--grid-line);padding:50px;font-size:12px}.reveal{opacity:0;transition:opacity .7s,transform .7s;transform:translateY(24px)}.reveal.in{opacity:1;transform:translateY(0)}.portfolio-hero{text-align:center;border-bottom:1px solid var(--grid-line);padding:170px 48px 70px;position:relative;overflow:hidden}.portfolio-hero-grid{z-index:0;background:linear-gradient(var(--grid-line) 1px, transparent 1px) 0 0 / 36px 36px, linear-gradient(90deg, var(--grid-line) 1px, transparent 1px) 0 0 / 36px 36px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(#000 40%,#0000 85%);mask-image:radial-gradient(#000 40%,#0000 85%)}.portfolio-hero .eyebrow,.portfolio-hero h1,.portfolio-hero p{z-index:1;position:relative}.portfolio-hero h1{letter-spacing:3px;color:var(--white);text-shadow:0 0 24px #e2231a66;margin-bottom:14px;font-size:clamp(28px,5vw,46px)}.portfolio-hero .lead{margin:0 auto}.portfolio-filters{border-bottom:1px solid var(--grid-line);flex-wrap:wrap;align-items:center;gap:10px;margin-top:40px;padding-bottom:24px;display:flex}.portfolio-filter{border:1px solid var(--grid-line);color:var(--gray);cursor:pointer;background:0 0;padding:9px 14px;font-size:10px;transition:all .2s}.portfolio-filter:hover{color:var(--white);border-color:#e2231a80}.portfolio-filter.is-active{background:var(--neon);border-color:var(--neon);color:#141414;box-shadow:0 0 14px #e2231a80}.portfolio-count{color:var(--gray);letter-spacing:1px;margin-left:auto;font-size:9px}.portfolio-grid{background:var(--grid-line);grid-template-columns:repeat(3,1fr);gap:2px;margin-top:32px;display:grid}.portfolio-card{background:var(--bg2);color:inherit;border-top:2px solid #0000;text-decoration:none;transition:all .25s;display:block;overflow:hidden}.portfolio-card:hover{border-top-color:var(--neon);background:#1c1414}.portfolio-thumb{aspect-ratio:16/10;background:#000;position:relative;overflow:hidden}.portfolio-thumb img{transition:transform .4s}.portfolio-card:hover .portfolio-thumb img{transform:scale(1.06)}.portfolio-tag{z-index:1;color:var(--neon2);background:#080808d9;border:1px solid #e2231a66;padding:5px 9px;font-size:9px;position:absolute;top:12px;left:12px}.portfolio-overlay{opacity:0;background:linear-gradient(#0808081a,#080808d9);justify-content:center;align-items:center;transition:all .25s;display:flex;position:absolute;inset:0}.portfolio-overlay span{color:var(--white);border:1px solid var(--neon);background:#e2231a26;padding:10px 16px;font-size:11px;transition:all .25s;transform:translateY(8px)}.portfolio-card:hover .portfolio-overlay{opacity:1}.portfolio-card:hover .portfolio-overlay span{transform:translateY(0)}.portfolio-body{padding:20px}.portfolio-body h3{margin-bottom:8px;font-size:15px}.portfolio-body p{color:var(--gray);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;line-height:1.6;display:-webkit-box;overflow:hidden}.placeholder-page{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:70vh;padding:160px 24px 100px;display:flex}.placeholder-page h1{margin-bottom:16px;font-size:clamp(22px,4vw,34px)}.placeholder-page p{color:var(--gray);max-width:480px;line-height:1.8}@media (max-width:880px){header.site-header{padding:14px 20px}.logo-mini span{font-size:11px}.services-grid{grid-template-columns:repeat(2,1fr)}.vm-grid,.contact{grid-template-columns:1fr}.logo-wall{grid-template-columns:repeat(3,1fr)}.portfolio-grid{grid-template-columns:1fr}.site-nav,.nav-cta{display:none}.nav-toggle{display:flex}.mobile-nav{z-index:49;border-bottom:1px solid var(--grid-line);background:#0a0a0af7;max-height:0;transition:max-height .3s;display:block;position:fixed;top:60px;left:0;right:0;overflow:hidden}.mobile-nav.is-open{max-height:320px}.mobile-nav ul{padding:8px 24px 20px;list-style:none}.mobile-nav li{border-bottom:1px solid var(--grid-line)}.mobile-nav a{color:var(--white);padding:16px 4px;font-size:15px;text-decoration:none;display:block}.section{padding:80px 24px}.hero-card{padding:26px 22px 30px}.hero .ctas{flex-direction:column;align-items:stretch}.hero .ctas .btn{text-align:center}}.wandering-cat{z-index:60;cursor:pointer;pointer-events:auto;filter:drop-shadow(0 4px 6px #00000080);-webkit-tap-highlight-color:transparent;position:fixed;bottom:10px;left:0}.cat-sheet{image-rendering:pixelated;background-repeat:no-repeat}@keyframes cat-sheet-step{0%{background-position-x:0%}to{background-position-x:100%}}
