@font-face{font-family:Instrument Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/instrument-sans-latin-ext-400-normal.Q_nF8v4l.woff2)format("woff2"),url(/_astro/instrument-sans-latin-ext-400-normal.r32jotim.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(/_astro/instrument-sans-latin-400-normal.DRC__1Mx.woff2)format("woff2"),url(/_astro/instrument-sans-latin-400-normal.D1W7dsQl.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(/_astro/instrument-sans-latin-ext-500-normal.CTEe1bJa.woff2)format("woff2"),url(/_astro/instrument-sans-latin-ext-500-normal.CAxz3nsc.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(/_astro/instrument-sans-latin-500-normal.Dk9ku72i.woff2)format("woff2"),url(/_astro/instrument-sans-latin-500-normal.Z6ESRlEs.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(/_astro/instrument-sans-latin-ext-600-normal.BsaQcF38.woff2)format("woff2"),url(/_astro/instrument-sans-latin-ext-600-normal.DMks36a2.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(/_astro/instrument-sans-latin-600-normal.B7fBEWYG.woff2)format("woff2"),url(/_astro/instrument-sans-latin-600-normal.B9e8oLYv.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(/_astro/ibm-plex-mono-cyrillic-ext-400-normal.xuaO2J-f.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-ext-400-normal.DMdlQ8Kv.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(/_astro/ibm-plex-mono-cyrillic-400-normal.BSMlKf0J.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-400-normal.CEL4l2ZJ.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(/_astro/ibm-plex-mono-vietnamese-400-normal.BulugwFq.woff2)format("woff2"),url(/_astro/ibm-plex-mono-vietnamese-400-normal.DDuiU_S-.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(/_astro/ibm-plex-mono-latin-ext-400-normal.BmRBH3aV.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-ext-400-normal.D3D2R8hC.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(/_astro/ibm-plex-mono-latin-400-normal.DMJ8VG8y.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-400-normal.CvHOgSBP.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(/_astro/ibm-plex-mono-cyrillic-ext-500-normal.BqneJy0T.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-ext-500-normal.BIfNGwUT.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(/_astro/ibm-plex-mono-cyrillic-500-normal.Bq9vWWag.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-500-normal.Ael50iVv.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(/_astro/ibm-plex-mono-vietnamese-500-normal.DZ4AoWbu.woff2)format("woff2"),url(/_astro/ibm-plex-mono-vietnamese-500-normal.C8zxqsMH.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(/_astro/ibm-plex-mono-latin-ext-500-normal.CAhNIIs5.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-ext-500-normal.CZ70TYgx.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(/_astro/ibm-plex-mono-latin-500-normal.DSY6xOcd.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-500-normal.CB9ihrfo.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{--dev-bg:#f4f3ef;--dev-surface:#eae9e2;--dev-ink:#1d2420;--dev-muted:#626c65;--dev-line:#c9cec6;--dev-accent:#ad4e2c;--dev-font:"Instrument Sans", Arial, sans-serif;--dev-mono:"IBM Plex Mono", Consolas, monospace}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{background:var(--dev-bg);color:var(--dev-ink);font:400 16px/1.6 var(--dev-font);-webkit-font-smoothing:antialiased;margin:0}a{color:inherit}a:focus-visible,button:focus-visible{outline:2px solid var(--dev-accent);outline-offset:4px}::selection{color:var(--dev-ink);background:#eec6b6}img{max-width:100%;height:auto;display:block}.skip-link{z-index:100;background:var(--dev-ink);color:#fff;padding:8px 12px;position:absolute;top:-60px;left:12px}.skip-link:focus{top:12px}.dev-shell{width:min(100% - 64px,1160px);margin-inline:auto}.dev-header{z-index:5;border-bottom:1px solid var(--dev-line);position:relative}.header-inner{align-items:center;gap:44px;min-height:84px;display:flex}.signature{align-items:center;gap:15px;min-width:270px;text-decoration:none;display:inline-flex}.signature-mark{border:1.5px solid var(--dev-ink);width:45px;height:45px;font:600 17px var(--dev-mono);letter-spacing:-.08em;justify-content:center;align-items:center;display:flex}.signature-mark span{color:var(--dev-accent)}.signature-label{font-size:14px;font-weight:600;line-height:1.2}.signature-label small{color:var(--dev-muted);letter-spacing:.02em;margin-top:4px;font-size:11px;font-weight:400;display:block}.dev-header nav{gap:31px;margin-left:auto;display:flex}.dev-header nav a,.header-return{font:500 13px/1.4 var(--dev-font);text-decoration:none}.dev-header nav a:hover,.header-return:hover,.footer-links a:hover{color:var(--dev-accent)}.header-return{border-left:1px solid var(--dev-line);white-space:nowrap;padding-left:28px}.header-return span,.footer-links span{font-family:var(--dev-mono);font-weight:400}.eyebrow{font:500 11px/1.45 var(--dev-mono);letter-spacing:.11em;text-transform:uppercase;color:var(--dev-accent);margin:0}.eyebrow:before{content:"";vertical-align:middle;background:currentColor;width:17px;height:1px;margin-right:10px;display:inline-block}.hero{padding:clamp(80px,11vw,150px) 0 100px}.hero h1{letter-spacing:-.065em;max-width:850px;margin:22px 0 25px;font-size:clamp(49px,6.6vw,91px);font-weight:500;line-height:.98}.hero .intro{color:#434c45;max-width:650px;margin:0;font-size:clamp(17px,2.05vw,21px);line-height:1.55}.text-link{border-bottom:1px solid;padding-bottom:3px;font-size:14px;font-weight:600;text-decoration:none}.text-link:hover{color:var(--dev-accent)}.section-line{border-top:1px solid var(--dev-ink);justify-content:space-between;align-items:baseline;gap:24px;padding-top:20px;display:flex}.section-line h2{letter-spacing:-.045em;margin:0;font-size:clamp(24px,3vw,37px);font-weight:500}.section-line p{color:var(--dev-muted);font:400 12px/1.5 var(--dev-mono);text-align:right;margin:0}.group{padding-top:75px}.group-title{justify-content:space-between;align-items:baseline;gap:20px;margin:0 0 16px;display:flex}.group-title h3{letter-spacing:-.02em;margin:0;font-size:19px;font-weight:500}.group-title p{color:var(--dev-muted);margin:0;font-size:13px}.project-list{border-top:1px solid var(--dev-line)}.project-row{border-bottom:1px solid var(--dev-line);grid-template-columns:54px minmax(130px,190px) minmax(260px,1fr) 230px 20px;align-items:center;gap:22px;min-height:112px;text-decoration:none;transition:background-color .2s,padding .2s;display:grid;position:relative}.project-row:hover{background:var(--dev-surface);padding-inline:15px}.project-row .number{color:var(--dev-accent);font:400 12px var(--dev-mono)}.project-row .name{letter-spacing:-.045em;font-size:clamp(21px,2.6vw,29px);font-weight:500;line-height:1.1}.project-row .line{color:#454d46;font-size:15px;line-height:1.45}.project-row .meta{font:400 11px/1.5 var(--dev-mono);color:var(--dev-muted);flex-wrap:wrap;gap:5px 9px;display:flex}.project-row .meta span+span:before{content:"/";color:#a9b0a8;margin-right:9px}.project-row .arrow{color:var(--dev-accent);font:500 20px/1 var(--dev-mono);place-self:start end;padding-top:36px;transition:transform .2s}.project-row:hover .arrow{transform:translate(3px,-3px)}.about-section{border-top:1px solid var(--dev-ink);grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:12%;margin-top:125px;padding-top:25px;display:grid}.about-section h2{letter-spacing:-.055em;margin:0;font-size:clamp(30px,4vw,50px);font-weight:500;line-height:1.1}.about-section p{color:#454d46;margin:0 0 20px;font-size:17px}.about-section .text-link{margin-top:5px;display:inline-block}.contact-section{border-top:1px solid var(--dev-ink);grid-template-columns:1fr auto;align-items:end;gap:32px;margin:130px 0 110px;padding-top:25px;display:grid}.contact-section h2{letter-spacing:-.06em;margin:13px 0 0;font-size:clamp(37px,5.4vw,70px);font-weight:500;line-height:1.05}.contact-section .text-link{white-space:nowrap;margin-bottom:8px}.dev-footer{border-top:1px solid var(--dev-line)}.footer-inner{min-height:83px;color:var(--dev-muted);font:400 12px/1.5 var(--dev-mono);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;display:flex}.footer-links{flex-wrap:wrap;gap:20px;display:flex}.footer-links a{text-decoration:none}.case-back{color:var(--dev-muted);font:400 12px var(--dev-mono);margin:47px 0 58px;text-decoration:none;display:inline-block}.case-back:hover{color:var(--dev-accent)}.case-header{border-bottom:1px solid var(--dev-ink);grid-template-columns:minmax(0,1fr) 290px;align-items:end;gap:8%;padding-bottom:52px;display:grid}.case-header h1{letter-spacing:-.075em;margin:14px 0 15px;font-size:clamp(62px,9vw,118px);font-weight:500;line-height:.95}.case-header .case-line{letter-spacing:-.025em;max-width:690px;margin:0;font-size:clamp(19px,2.25vw,25px);line-height:1.4}.case-meta{border-left:1px solid var(--dev-line);padding-left:20px}.case-meta dt{color:var(--dev-muted);font:400 11px var(--dev-mono);text-transform:uppercase;letter-spacing:.06em;margin:15px 0 3px}.case-meta dt:first-child{margin-top:0}.case-meta dd{margin:0;font-size:14px}.case-intro{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8%;padding:50px 0 55px;display:grid}.case-intro p{max-width:760px;margin:0;font-size:clamp(18px,2vw,23px);line-height:1.55}.case-links{flex-direction:column;align-items:flex-start;gap:12px;min-width:170px;display:flex}.case-links .text-link{white-space:nowrap}.case-media{border:1px solid var(--dev-line);background:#e5e5dd;margin:0 0 85px;padding:clamp(18px,4vw,50px)}.case-media img{object-fit:contain;width:100%;max-height:620px;margin-inline:auto;box-shadow:0 10px 35px #1d242014}.case-media figcaption{font:400 11px var(--dev-mono);color:var(--dev-muted);margin-top:15px}.case-content{border-top:1px solid var(--dev-line);grid-template-columns:220px minmax(0,1fr);gap:5%;padding:31px 0 55px;display:grid}.case-content h2{margin:0;font-size:15px;font-weight:500}.case-content p{color:#414941;max-width:720px;margin:0;font-size:18px;line-height:1.65}.case-decision{border-bottom:1px solid var(--dev-line);grid-template-columns:48px minmax(0,220px) minmax(0,1fr);gap:18px;padding:25px 0;display:grid}.case-decision:first-of-type{border-top:1px solid var(--dev-line)}.case-decision .number{color:var(--dev-accent);font:400 12px var(--dev-mono)}.case-decision h3{margin:0;font-size:17px;font-weight:500;line-height:1.4}.case-decision p{color:#414941;margin:0;line-height:1.55}.case-end{border-top:1px solid var(--dev-ink);margin:75px 0 100px;padding:24px 0 0}.case-end p{color:#414941;max-width:800px;margin:18px 0 25px;font-size:18px}@media (width<=900px){.header-inner{flex-wrap:wrap;gap:10px 24px;padding-block:14px}.signature{flex:1}.dev-header nav{order:3;justify-content:space-between;gap:10px;width:100%;margin:4px 0 0}.header-return{border:0;padding:0}.project-row{grid-template-columns:40px minmax(120px,170px) 1fr 20px}.project-row .meta{display:none}}@media (width<=620px){.dev-shell{width:min(100% - 36px,1160px)}.header-inner{min-height:0}.signature{min-width:0}.signature-label{font-size:13px}.header-return{font-size:11px}.dev-header nav a{font-size:12px}.hero{padding:75px 0 72px}.hero h1{font-size:clamp(46px,11vw,68px)}.section-line,.group-title{flex-direction:column;align-items:flex-start;gap:5px}.section-line p{text-align:left}.group{padding-top:55px}.project-row{grid-template-columns:32px minmax(0,1fr) 20px;gap:11px;min-height:118px;padding-block:18px}.project-row .number{align-self:start;padding-top:4px}.project-row .name{grid-column:2}.project-row .line{grid-column:2;font-size:13px}.project-row .arrow{grid-area:1/3/3;padding-top:8px}.about-section,.contact-section{grid-template-columns:1fr;gap:22px;margin-top:90px}.contact-section{margin-bottom:90px}.case-back{margin:31px 0 50px}.case-header{grid-template-columns:1fr;gap:35px}.case-header h1{font-size:clamp(58px,15vw,90px)}.case-meta{border-left:0;border-top:1px solid var(--dev-line);grid-template-columns:100px minmax(0,1fr);gap:8px 12px;padding:18px 0 0;display:grid}.case-meta dt{margin:0}.case-meta dd{overflow-wrap:anywhere}.case-intro{grid-template-columns:1fr;gap:25px}.case-links{flex-flow:wrap}.case-content{grid-template-columns:1fr;gap:12px}.case-decision{grid-template-columns:32px 1fr;gap:5px 12px}.case-decision p{grid-column:2}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.project-row,.project-row .arrow{transition:none}}
