@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(../media/bricolage-grotesque-vietnamese-wght-normal.0h_qcmzvudf58.woff2)format("woff2-variations");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:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(../media/bricolage-grotesque-latin-ext-wght-normal.0i4j_a8lim1a-.woff2)format("woff2-variations");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:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(../media/bricolage-grotesque-latin-wght-normal.300rpl789hft0.woff2)format("woff2-variations");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:Instrument Sans;font-style:normal;font-display:swap;font-weight:400;src:url(../media/instrument-sans-latin-ext-400-normal.06jgjxwem-j4l.woff2)format("woff2"),url(../media/instrument-sans-latin-ext-400-normal.2sh6eiud8p5to.woff)format("woff");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:Instrument Sans;font-style:normal;font-display:swap;font-weight:400;src:url(../media/instrument-sans-latin-400-normal.350ekqw02c4ub.woff2)format("woff2"),url(../media/instrument-sans-latin-400-normal.0y101ejb90zo_.woff)format("woff");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:Instrument Sans;font-style:normal;font-display:swap;font-weight:500;src:url(../media/instrument-sans-latin-ext-500-normal.3_j4pp7s_oson.woff2)format("woff2"),url(../media/instrument-sans-latin-ext-500-normal.39gv8qzlsfdpj.woff)format("woff");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:Instrument Sans;font-style:normal;font-display:swap;font-weight:500;src:url(../media/instrument-sans-latin-500-normal.1m_u3k-3_nxk9.woff2)format("woff2"),url(../media/instrument-sans-latin-500-normal.16b_u8jrvdjgm.woff)format("woff");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:Instrument Sans;font-style:normal;font-display:swap;font-weight:600;src:url(../media/instrument-sans-latin-ext-600-normal.1s9509amcneue.woff2)format("woff2"),url(../media/instrument-sans-latin-ext-600-normal.2gzep0q8z_mik.woff)format("woff");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:Instrument Sans;font-style:normal;font-display:swap;font-weight:600;src:url(../media/instrument-sans-latin-600-normal.31b98hgxp8isy.woff2)format("woff2"),url(../media/instrument-sans-latin-600-normal.09hqi4pw218gc.woff)format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(../media/ibm-plex-mono-cyrillic-ext-400-normal.0_q8wa_t-7-c7.woff2)format("woff2"),url(../media/ibm-plex-mono-cyrillic-ext-400-normal.1-h66gx1kjeux.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(../media/ibm-plex-mono-cyrillic-400-normal.2dcg25_89g34d.woff2)format("woff2"),url(../media/ibm-plex-mono-cyrillic-400-normal.1r3eey-1tdqwh.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(../media/ibm-plex-mono-vietnamese-400-normal.40ek894ady0so.woff2)format("woff2"),url(../media/ibm-plex-mono-vietnamese-400-normal.0blsyrk14nago.woff)format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(../media/ibm-plex-mono-latin-ext-400-normal.1ih4rrmj883u6.woff2)format("woff2"),url(../media/ibm-plex-mono-latin-ext-400-normal.0hj8bqnym411c.woff)format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(../media/ibm-plex-mono-latin-400-normal.19gbeb610ur4n.woff2)format("woff2"),url(../media/ibm-plex-mono-latin-400-normal.3nj-glub930lh.woff)format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(../media/ibm-plex-mono-cyrillic-ext-500-normal.2tfs-ajhr_27q.woff2)format("woff2"),url(../media/ibm-plex-mono-cyrillic-ext-500-normal.29wincfdhpbow.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(../media/ibm-plex-mono-cyrillic-500-normal.30hm7mcic8nak.woff2)format("woff2"),url(../media/ibm-plex-mono-cyrillic-500-normal.1g2cl4geicio1.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(../media/ibm-plex-mono-vietnamese-500-normal.400h8-n7y356b.woff2)format("woff2"),url(../media/ibm-plex-mono-vietnamese-500-normal.2w9-mj8vy__-b.woff)format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(../media/ibm-plex-mono-latin-ext-500-normal.2yypdhrkbqnza.woff2)format("woff2"),url(../media/ibm-plex-mono-latin-ext-500-normal.3-fgi0nn_mag-.woff)format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(../media/ibm-plex-mono-latin-500-normal.25_05y-blbp24.woff2)format("woff2"),url(../media/ibm-plex-mono-latin-500-normal.20ixcot5hpnm-.woff)format("woff");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}
:root{--ink:#101418;--ink-2:#2c333b;--ink-3:#4a525c;--paper:#f6f7f5;--stone:#e9ece8;--line:#c9cfcb;--signal:#ff5a1f;--night-muted:#b9c0c8;--radius:16px;--max:1200px;--font-display:"Bricolage Grotesque Variable", system-ui, sans-serif;--font-body:"Instrument Sans", system-ui, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, monospace}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;font-size:17px;line-height:1.55}img{max-width:100%;display:block}a{color:var(--ink)}a:hover{color:#c93f0c}:focus-visible{outline:3px solid var(--signal);outline-offset:3px;border-radius:4px}.container{max-width:var(--max);margin:0 auto;padding-inline:24px}.mono{font-family:var(--font-mono)}.display{font-family:var(--font-display);letter-spacing:-.03em;line-height:1.02}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.btn{min-height:48px;font:inherit;cursor:pointer;border:1.5px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:12px 24px;font-weight:600;text-decoration:none;transition:transform .15s,background .15s;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn-signal{background:var(--signal);color:var(--ink)}.btn-signal:hover{color:var(--ink);background:#ff6d37}.btn-ink{background:var(--ink);color:var(--paper)}.btn-ink:hover{color:var(--paper);background:#222a33}.btn-outline{border-color:var(--ink);color:var(--ink)}.btn[disabled]{opacity:.6;cursor:progress;transform:none}.header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding-block:24px;display:flex}.brand{align-items:center;gap:10px;text-decoration:none;display:flex}.brand-word{font-family:var(--font-display);letter-spacing:-.02em;font-size:24px;font-weight:800}.nav{flex-wrap:wrap;align-items:center;gap:8px 28px;font-weight:500;display:flex}.nav a{text-decoration:none}.nav .btn{min-height:44px;padding:10px 20px}.hero{padding-block:72px 96px}.kicker{font-family:var(--font-mono);letter-spacing:.04em;color:var(--ink-3);margin:0 0 20px;font-size:14px}.hero h1{letter-spacing:-.035em;max-width:1000px;margin:0;font-size:clamp(44px,7.4vw,104px);font-weight:800;line-height:.98}.hero-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:32px;margin-top:40px;display:flex}.hero-row p{max-width:540px;color:var(--ink-2);margin:0;font-size:20px}.actions{flex-wrap:wrap;gap:12px;display:flex}.tags{border-top:1.5px solid var(--ink);flex-wrap:wrap;margin-top:72px;display:flex}.tags span{font-family:var(--font-mono);color:var(--ink-3);flex:220px;padding-top:20px;font-size:14px}.section{padding-block:96px}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:48px;display:flex}.section-head h2,.h2{font-family:var(--font-display);letter-spacing:-.03em;max-width:680px;margin:0;font-size:clamp(34px,4.6vw,60px);font-weight:700;line-height:1.02}.section-head p{max-width:420px;color:var(--ink-2);margin:0}.dark{background:var(--ink);color:var(--paper)}.dark .section-head p{color:var(--night-muted)}.services{background:#2b323a;border:1.5px solid #2b323a;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5px;display:grid}.service{background:var(--ink);flex-direction:column;gap:14px;padding:32px 28px;display:flex}.service .num{font-family:var(--font-mono);color:var(--signal);font-size:14px}.service h3{font-family:var(--font-display);margin:0;font-size:26px;font-weight:700}.service p{color:var(--night-muted);margin:0}.steps{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:32px;margin:0;padding:0;list-style:none;display:grid}.steps li{border-top:4px solid var(--ink);padding-top:20px}.steps li:last-child{border-top-color:var(--signal)}.steps h3{font-family:var(--font-display);margin:0 0 8px;font-size:24px;font-weight:700}.steps p{color:var(--ink-2);margin:0}.work{background:var(--stone)}.projects{flex-direction:column;gap:32px;display:flex}.project{background:var(--paper);border:1.5px solid var(--ink);border-radius:20px;flex-wrap:wrap;display:flex;overflow:hidden}.project.reverse{flex-direction:row-reverse}.project-media{flex:3 560px;min-width:0;padding:clamp(20px,4vw,48px)}.project-body{flex-direction:column;flex:2 340px;justify-content:center;gap:14px;padding:clamp(28px,3.5vw,48px);display:flex}.project-body .eyebrow{font-family:var(--font-mono);color:var(--ink-3);margin:0;font-size:13px}.project-body h3{font-family:var(--font-display);letter-spacing:-.03em;margin:0;font-size:clamp(32px,3.4vw,46px);font-weight:800;line-height:1.02}.project-body p{color:var(--ink-2);margin:0}.features{flex-direction:column;gap:8px;margin:6px 0 0;padding:0;font-size:15px;list-style:none;display:flex}.features li{border-top:1px solid var(--line);padding-top:8px}.project-body .btn{align-self:flex-start;min-height:46px;padding:12px 22px}.collage{width:100%;position:relative}.shot{border:1px solid #ffffff24;border-radius:10px;height:auto;position:absolute;box-shadow:0 30px 70px #0009}.window{background:#fff;border:1px solid #ffffff38;border-radius:12px;margin:0;position:absolute;overflow:hidden;box-shadow:0 -10px 60px #0000008c,0 30px 70px #0009}.window-bar{height:26px;font-family:var(--font-mono);color:#a9a2bf;background:#1f1a2e;align-items:center;gap:6px;padding:0 12px;font-size:11px;display:flex}.window-bar i{background:#4a4260;border-radius:50%;width:8px;height:8px}.window-bar span{margin-left:10px}.window img{width:100%;height:auto}.contact-card{background:var(--ink);color:var(--paper);border-radius:28px;flex-wrap:wrap;justify-content:space-between;gap:48px;padding:clamp(32px,6vw,72px);display:flex}.contact-card>div{flex:380px}.contact-card h2{font-family:var(--font-display);letter-spacing:-.03em;margin:0 0 16px;font-size:clamp(36px,5vw,68px);font-weight:800;line-height:1}.contact-card .lead{color:var(--night-muted);max-width:440px;margin:0 0 24px}.contact-card a.mail{color:var(--signal);font-family:var(--font-mono)}.contact-card .where{font-family:var(--font-mono);color:var(--night-muted);margin:6px 0 0;font-size:15px}.form{flex-direction:column;flex:360px;gap:16px;display:flex}.field{flex-direction:column;gap:6px;font-weight:500;display:flex}.field-row{flex-wrap:wrap;gap:16px;display:flex}.field-row .field{flex:180px}.input{font:inherit;color:var(--paper);background:#1a2028;border:1.5px solid #4a525c;border-radius:10px;width:100%;min-height:48px;padding:12px 14px;font-weight:400}.input:focus{border-color:var(--signal);outline:none}textarea.input{resize:vertical;min-height:120px}select.input{appearance:none;background-image:linear-gradient(45deg,#0000 50%,#b9c0c8 50%),linear-gradient(135deg,#b9c0c8 50%,#0000 50%);background-position:calc(100% - 20px),calc(100% - 15px);background-repeat:no-repeat;background-size:5px 5px;padding-right:40px}.field-error{color:#ff9b78;font-size:14px;font-weight:400}.honeypot{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.form-status{border-radius:10px;margin:0;padding:14px 16px;font-weight:500}.form-status.ok{color:#8ff0c4;background:#12372a}.form-status.err{color:#ffb59c;background:#3d1b12}.form .btn{align-self:flex-start}.footer{border-top:1.5px solid var(--ink);color:var(--ink-3);flex-wrap:wrap;justify-content:space-between;gap:16px;padding-block:32px 48px;font-size:15px;display:flex}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}}
