@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/bricolage-grotesque-vietnamese-opsz-normal.D9N6E8K1.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(/_astro/bricolage-grotesque-latin-ext-opsz-normal.IcJDqblK.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(/_astro/bricolage-grotesque-latin-opsz-normal.Cre6nC2_.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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-cyrillic-ext-wght-normal.BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-cyrillic-wght-normal.DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-greek-ext-wght-normal.DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-greek-wght-normal.CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-vietnamese-wght-normal.CBcvBZtf.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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-latin-ext-wght-normal.DO1Apj_S.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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-latin-wght-normal.Dx4kXJAl.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}:root{--gap:clamp(56px, 7vw, 100px);--bg:#f4f4f2;--surface:#fff;--muted-surface:#e7ecf0;--ink:#0b0d10;--ink-2:#4a4f57;--ink-3:#8a9099;--dark:#0b0d10;--dark-2:#15181d;--dark-line:#ffffff1a;--line:#0b0d101a;--accent:#1a3fe9;--accent-soft:#dce3ff;--radius:20px;--radius-sm:12px;--display:"Bricolage Grotesque Variable", system-ui, sans-serif;--text:"Inter Variable", system-ui, sans-serif;--gutter:clamp(16px, 4vw, 48px);--max:1600px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}html.lenis{scroll-behavior:auto}body{background:var(--bg);color:var(--ink);font:400 16px/1.6 var(--text);-webkit-font-smoothing:antialiased;overflow-x:clip}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.wrap{max-width:var(--max);padding:0 var(--gutter);margin:0 auto}h1,h2,h3{font-family:var(--display);letter-spacing:-.04em;font-weight:500;line-height:1}.h-xl{font-size:clamp(52px,9.4vw,148px)}.h-lg{font-size:clamp(40px,6vw,84px)}.h-md{letter-spacing:-.03em;font-size:clamp(28px,3vw,40px);line-height:1.1}.eyebrow{font:500 13px/1 var(--text);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);align-items:center;gap:10px;display:inline-flex}.eyebrow:before{content:"";background:var(--accent);border-radius:50%;width:8px;height:8px}.lead{color:var(--ink-2);max-width:560px;font-size:clamp(17px,1.4vw,20px)}.btn{height:52px;font:500 15px/1 var(--text);white-space:nowrap;border-radius:999px;align-items:center;gap:10px;padding:0 24px;transition:transform .2s,background .2s,color .2s;display:inline-flex}.btn:hover{transform:translateY(-2px)}.btn-light{color:var(--ink);background:#fff}.btn-accent{background:var(--accent);color:#fff}.btn-accent:hover{background:#1533c4}.btn-ghost{color:#fff;border:1px solid #ffffff40}.btn-ghost:hover{background:#ffffff14}.btn-dark{background:var(--ink);color:#fff}.chip-btn{color:var(--ink);border:1px solid var(--line)}.chip-btn:hover{border-color:var(--ink)}.btn .arr{transition:transform .2s}.btn:hover .arr{transform:translate(3px)}.nav{z-index:50;width:calc(100% - 2 * var(--gutter));max-width:var(--max);-webkit-backdrop-filter:blur(16px);border:1px solid var(--dark-line);color:#fff;background:#15181db8;border-radius:999px;justify-content:space-between;align-items:center;padding:8px 8px 8px 22px;transition:background .3s,color .3s,border-color .3s,transform .45s cubic-bezier(.2,.7,.2,1),max-width .45s cubic-bezier(.5,0,.15,1),top .45s cubic-bezier(.5,0,.15,1),padding .45s cubic-bezier(.5,0,.15,1),-webkit-backdrop-filter .45s,backdrop-filter .45s;display:flex;position:fixed;top:16px;left:50%;transform:translate(-50%)}.nav.on-light{color:var(--ink);border-color:var(--line);background:#fffc}.nav-links{gap:4px;display:flex}.nav-links a{opacity:.8;border-radius:999px;padding:10px 16px;font-size:14px;font-weight:500;transition:opacity .2s,background .2s}.nav-links a:hover{opacity:1;background:#7f7f7f26}.nav .btn{height:44px;padding:0 20px;font-size:14px}.nav.on-light .btn-light{background:var(--ink);color:#fff}.burger{width:44px;height:44px;color:inherit;cursor:pointer;background:#7f7f7f33;border:0;border-radius:50%;font-size:18px;display:none}.hero{background:var(--dark);color:#fff;border-radius:0 0 var(--radius) var(--radius);padding:148px 0 56px;position:relative;overflow:hidden}.hero-glow{pointer-events:none;background:radial-gradient(circle,#1a3fe98c 0%,#1a3fe900 62%);width:900px;height:900px;animation:14s ease-in-out infinite alternate drift;position:absolute;top:-340px;right:-260px}@keyframes drift{to{transform:translate(-120px,80px)scale(1.1)}}.hero .wrap{position:relative}.hero .eyebrow{color:#fff9;margin-bottom:32px}.hero h1 em{color:#0000;-webkit-text-stroke:1.5px #ffffff8c;font-style:normal}.hero-bottom{flex-direction:column;align-items:flex-start;gap:28px;margin-top:48px;display:flex}.hero .lead{color:#ffffffb3}.hero-cta{flex-wrap:wrap;gap:12px;display:flex}.stats{border-top:1px solid var(--dark-line);grid-template-columns:repeat(4,1fr);margin-top:96px;display:grid}.stat{padding:28px 24px 8px 0}.stat+.stat{border-left:1px solid var(--dark-line);padding-left:24px}.stat b{font:500 clamp(36px, 4vw, 56px)/1 var(--display);letter-spacing:-.04em;display:block}.stat span{color:#ffffff8c;font-size:14px}.clients{padding:56px 0 24px}.clients p{text-align:center;color:var(--ink-3);margin-bottom:28px;font-size:14px}.marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 12% 88%,#0000);mask-image:linear-gradient(90deg,#0000,#000 12% 88%,#0000)}.marquee-track{gap:72px;width:max-content;padding-right:72px;animation:96s linear infinite scroll;display:flex}@keyframes scroll{to{transform:translate(-50%)}}section{padding:calc(var(--gap) / 2) 0}.dark{padding:clamp(48px,5.5vw,80px) 0}.dark,.cta{margin-top:calc(var(--gap) / 2);margin-bottom:calc(var(--gap) / 2)}.hero,.page-hero,.case-hero{margin-bottom:calc(var(--gap) / 2)}:is(.dark,.cta,.hero,.page-hero,.case-hero)+:is(.dark,.cta){margin-top:var(--gap)}section>.wrap>:last-child{margin-bottom:0!important}.sec-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:32px;margin-bottom:56px;display:flex}.sec-head .eyebrow{margin-bottom:20px}.cases{grid-template-columns:repeat(12,1fr);gap:16px;display:grid}.case{content-visibility:auto;contain-intrinsic-size:auto 440px;border-radius:var(--radius);color:#fff;isolation:isolate;flex-direction:column;grid-column:span 6;justify-content:space-between;min-height:440px;padding:32px;transition:transform .35s cubic-bezier(.2,.7,.2,1);display:flex;position:relative;overflow:hidden}.case:hover{transform:translateY(-6px)}.case.wide{grid-column:span 7}.case.narrow{grid-column:span 5}.case.light{color:var(--ink)}.case-top{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.tags{flex-wrap:wrap;gap:6px;display:flex}.tag{backdrop-filter:blur(6px);background:#ffffff29;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:500}.case.light .tag{background:#0b0d1014}.tag.tag-industry{color:var(--ink);background:#fff}.case.light .tag.tag-industry{background:var(--ink);color:#fff}.case-arrow{width:48px;height:48px;color:var(--ink);background:#fff;border-radius:50%;flex-shrink:0;place-items:center;font-size:20px;transition:transform .3s;display:grid}.case:hover .case-arrow{transform:rotate(-45deg)}.case h3{margin-bottom:14px;font-size:clamp(32px,3.4vw,48px)}.case p{opacity:.8;max-width:440px;font-size:15px}.case-art{z-index:-1;opacity:.25;border-radius:40px;width:300px;height:300px;transition:transform .5s cubic-bezier(.2,.7,.2,1);position:absolute;top:50%;right:-40px;transform:translateY(-50%)}.case:hover .case-art{transform:translateY(-50%)rotate(8deg)scale(1.06)}.cases-more{text-align:center;margin-top:32px}.expertise{background:var(--surface);border-radius:var(--radius);margin:0 var(--gutter);max-width:calc(var(--max) - 2 * var(--gutter))}@media (width>=1321px){.expertise{margin:0 auto}}.exp-grid{grid-template-columns:360px 1fr;gap:48px;display:grid}.exp-tabs{border-top:1px solid var(--line);flex-direction:column;display:flex}.exp-tab{border:0;border-bottom:1px solid var(--line);text-align:left;font:500 clamp(20px, 1.8vw, 26px)/1.1 var(--display);letter-spacing:-.03em;color:var(--ink-3);cursor:pointer;background:0 0;justify-content:space-between;align-items:center;padding:22px 0;transition:color .2s,padding .3s;display:flex}@media (hover:hover){.exp-tab:hover{color:var(--ink)}}.exp-tab.active{color:var(--ink);padding-left:12px}.exp-tab .n{font:500 13px var(--text);color:var(--ink-3)}.exp-tab.active .n{color:var(--accent)}.exp-panel{background:var(--muted-surface);border-radius:var(--radius);flex-direction:column;justify-content:space-between;min-height:440px;padding:clamp(28px,4vw,56px);display:flex}.exp-panel h3{margin:18px 0 20px}.exp-panel p{color:var(--ink-2);max-width:620px}.stack{flex-wrap:wrap;gap:8px;margin-top:40px;display:flex}.stack span{background:#fff;border-radius:999px;padding:10px 18px;font-size:14px;font-weight:500}.fade{animation:.45s cubic-bezier(.2,.7,.2,1) fadeUp}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}}.industries{flex-wrap:wrap;gap:10px;display:flex}.industries span{font:500 clamp(18px, 2vw, 26px)/1 var(--display);letter-spacing:-.02em;border:1px solid var(--line);cursor:default;border-radius:999px;padding:18px 28px;transition:background .25s,color .25s,border-color .25s}.industries span:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.dark{background:var(--dark);color:#fff;border-radius:var(--radius);margin-left:var(--gutter);margin-right:var(--gutter)}.dark .eyebrow{color:#ffffff8c}.dark .lead{color:#ffffffa6}.values{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.value{background:var(--dark-2);border:1px solid var(--dark-line);border-radius:var(--radius);flex-direction:column;justify-content:space-between;min-height:280px;padding:32px;transition:border-color .3s,background .3s;display:flex}.value:hover{background:#161b2b;border-color:#1a3fe9b3}.value .num{font:500 14px var(--text);color:#fff6}.value h3{letter-spacing:-.03em;margin-bottom:12px;font-size:26px;line-height:1.1}.value p{color:#fff9;font-size:15px}.process{counter-reset:step;grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.step{border-top:2px solid var(--ink);padding-top:24px}.step:first-child{border-color:var(--accent)}.step b{font:500 14px var(--text);color:var(--ink-3);margin-bottom:40px;display:block}.step h3{letter-spacing:-.03em;margin-bottom:12px;font-size:28px}.step p{color:var(--ink-2);font-size:15px}.t-card{background:var(--surface);border-radius:var(--radius);flex-direction:column;gap:20px;padding:28px 32px;display:flex}.t-card blockquote{font:400 17px/1.6 var(--text);color:var(--ink-2)}.t-card blockquote p+p{margin-top:12px}.t-card img.avatar{object-fit:cover;background:var(--muted-surface)}.person{align-items:center;gap:14px;display:flex}.avatar{width:48px;height:48px;font:600 16px var(--display);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;display:grid}.person strong{font-size:15px;font-weight:600;display:block}.person span{color:var(--ink-3);font-size:13px}.cta{background:var(--accent);color:#fff;border-radius:var(--radius);margin-left:var(--gutter);margin-right:var(--gutter);padding:clamp(48px,6.5vw,96px) 0;position:relative;overflow:hidden}.cta:after{content:"";border:1px solid #fff3;border-radius:50%;width:700px;height:700px;position:absolute;bottom:-60%;right:-10%;box-shadow:0 0 0 80px #ffffff0a,0 0 0 160px #ffffff08}.cta .wrap{z-index:1;position:relative}.cta .lead{color:#fffc;margin:28px 0 40px}footer{padding:calc(var(--gap) / 2) 0 40px}.foot{border-bottom:1px solid var(--line);grid-template-columns:2fr 1fr 1fr 1fr;gap:32px;padding-bottom:64px;display:grid}.foot h4{font:500 13px var(--text);color:var(--ink-3);text-transform:uppercase;letter-spacing:.08em;margin-bottom:18px}.foot a,.foot address{margin-bottom:8px;font-style:normal;transition:color .2s;display:block}.foot a:hover{color:var(--accent)}.foot .foot-note{color:var(--ink-3);max-width:30ch;margin-top:12px;font-size:14px;line-height:1.45}.foot .quote{font:400 20px/1.35 var(--display);letter-spacing:-.02em;max-width:360px;color:var(--ink-2);margin-top:20px}.copy{color:var(--ink-3);flex-wrap:wrap;justify-content:space-between;gap:16px;padding-top:28px;font-size:14px;display:flex}.reveal{transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}.reveal.pending{opacity:0;transform:translateY(28px)}@media (prefers-reduced-motion:reduce){.reveal.pending{opacity:1;transform:none}.marquee-track,.hero-glow{animation:none}}@media (width<=1024px){.exp-grid{grid-template-columns:1fr}.values{grid-template-columns:repeat(2,1fr)}.process{grid-template-columns:repeat(2,1fr);row-gap:48px}.case,.case.wide,.case.narrow{grid-column:span 12;min-height:380px}.foot{grid-template-columns:1fr 1fr}}@media (width<=760px){.nav-links,.nav .btn{display:none}.burger{place-items:center;display:grid}.nav.open{border-radius:24px;flex-wrap:wrap;padding:8px 8px 16px 22px}.nav.open .nav-links{flex-direction:column;order:3;width:100%;margin-top:12px;display:flex}.nav.open .btn{order:4;margin-top:8px;display:inline-flex}.hero{padding-top:120px}.stats{grid-template-columns:1fr 1fr}.stat:nth-child(3){border-left:0;padding-left:0}.stat:nth-child(n+3){border-top:1px solid var(--dark-line)}.values,.process{grid-template-columns:1fr}.case{padding:24px}.foot{grid-template-columns:1fr}.dark,.cta,.expertise{margin-left:8px;margin-right:8px}}.logo{color:inherit;align-items:center;display:inline-flex}.logo svg{width:auto;height:20px;display:block}.nav .logo svg{height:22px}.nav-links a.active{opacity:1;background:#7f7f7f2e}.page-intro{padding:clamp(140px, 15vw, 210px) 0 calc(var(--gap) / 2)}.page-intro .lead{max-width:640px;color:var(--ink-2);margin-top:clamp(24px,3vw,40px)}.page-intro .stats{border-top-color:var(--line);margin-top:clamp(48px,6vw,96px)}.page-intro .stat+.stat{border-left-color:var(--line)}.page-intro .stat{border-top-color:var(--line)}.page-intro .stat span{color:var(--ink-3)}.page-intro .chips{flex-wrap:wrap;gap:8px;margin-top:clamp(32px,4vw,48px);display:flex}.intro-split h1{grid-template-columns:1fr 1fr;align-items:start;gap:0 clamp(24px,4vw,64px);display:grid}.intro-split .lead{margin-left:calc(50% + clamp(12px,2vw,32px))}.intro-center{text-align:center}.intro-center h1{font-size:clamp(44px,6.4vw,104px)}.intro-center .lead{text-wrap:balance;max-width:820px;margin-left:auto;margin-right:auto}.intro-center .hire-cta{justify-content:center}.h-photo{vertical-align:-.24em;border-radius:.1em;width:1.3em;height:1.08em;margin:0 .08em;display:inline-block;overflow:hidden}.h-photo img{object-fit:cover;width:100%;height:100%;display:block}.intro-center .nw{white-space:nowrap}@media (width<=760px){.page-intro{padding-top:120px}.intro-split h1{grid-template-columns:1fr}.intro-split .lead{margin-left:0}.intro-center .nw{white-space:normal}}.page-intro.tech-intro{padding-bottom:0}.tech-intro+.deck-sec{padding-top:48px}.page-intro.cases-intro{padding-bottom:0}.cases-intro+.ind-bar{padding-top:40px}.cases-intro~.ind:first-of-type{padding-top:32px}.intro-media .wrap{grid-template-columns:minmax(0,6fr) minmax(0,5fr);align-items:center;gap:clamp(32px,5vw,96px);display:grid}.case-reel{grid-template-columns:1fr 1fr;gap:14px;height:clamp(440px,44vw,660px);display:grid;overflow:hidden;-webkit-mask:linear-gradient(#0000,#000 14% 86%,#0000);mask:linear-gradient(#0000,#000 14% 86%,#0000)}.reel-track{gap:14px;animation:46s linear infinite reelUp;display:grid}.reel-col.down .reel-track{animation-duration:54s;animation-direction:reverse}.reel-tile{aspect-ratio:4/5;border-radius:var(--radius);background:var(--bg);place-items:center;display:grid;overflow:hidden}.reel-tile img{object-fit:contain;width:84%;height:84%}@keyframes reelUp{to{transform:translateY(calc(-50% - 7px))}}.tech-reel{gap:12px;display:grid;overflow:hidden;-webkit-mask:linear-gradient(90deg,#0000,#000 12% 88%,#0000);mask:linear-gradient(90deg,#0000,#000 12% 88%,#0000)}.tech-track{gap:12px;width:max-content;animation:38s linear infinite reelSide;display:flex}.tech-row.back .tech-track{animation-duration:44s;animation-direction:reverse}.tech-track span{background:var(--surface);font:500 16px var(--text);white-space:nowrap;border-radius:999px;align-items:center;gap:10px;padding:14px 22px;display:inline-flex;box-shadow:0 1px #0b0d100a}.tech-track span svg{flex:none;width:22px;height:22px}@keyframes reelSide{to{transform:translate(calc(-50% - 6px))}}.work-photo{border-radius:var(--radius);margin:clamp(40px,5vw,72px) 0;overflow:hidden}.work-photo img{object-fit:cover;object-position:50% 0%;width:100%;height:clamp(340px,52vw,760px);display:block}.work-intro .lead{margin-top:0}.intro-photo{border-radius:var(--radius);margin-top:clamp(48px,6vw,96px);overflow:hidden}.intro-photo img{object-fit:cover;width:100%;height:clamp(320px,44vw,640px);display:block}@media (width<=900px){.intro-media .wrap{grid-template-columns:1fr}.case-reel{height:380px}}@media (prefers-reduced-motion:reduce){.reel-track,.tech-track{animation:none}}.page-hero{background:var(--dark);color:#fff;border-radius:0 0 var(--radius) var(--radius);padding:148px 0 72px;position:relative;overflow:hidden}.page-hero .wrap{position:relative}.page-hero .eyebrow{color:#fff9;margin-bottom:28px}.page-hero .lead{color:#ffffffb3;margin-top:32px}.page-hero .hero-glow{width:700px;height:700px;top:-300px}.breadcrumbs{color:#ffffff80;gap:10px;margin-bottom:28px;font-size:14px;display:flex}.breadcrumbs a:hover{color:#fff}.filters{flex-wrap:wrap;gap:8px;margin-bottom:32px;display:flex}.chip{border:1px solid var(--line);height:44px;font:500 14px var(--text);color:var(--ink);cursor:pointer;background:0 0;border-radius:999px;padding:0 20px;transition:background .2s,color .2s,border-color .2s}.chip:hover{border-color:var(--ink)}.chip.active{background:var(--ink);color:#fff;border-color:var(--ink)}.chip sup{opacity:.55;margin-left:4px;font-size:11px}.case.hidden{display:none}.empty{color:var(--ink-3);padding:48px 0;display:none}.case-hero{color:#fff;border-radius:0 0 var(--radius) var(--radius);isolation:isolate;padding:148px 0 64px;position:relative;overflow:hidden}.case-hero.light{color:var(--ink)}.case-hero .breadcrumbs{color:inherit;opacity:.6}.case-hero .lead{color:inherit;opacity:.8;margin-top:28px}.case-hero .case-art{opacity:.3;width:520px;height:520px;right:-80px}.facts{border-color:#7f7f7f59;border-top-style:solid;border-top-width:1px;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:72px;display:grid}.facts div{padding-top:20px}.facts dt{text-transform:uppercase;letter-spacing:.08em;opacity:.6;margin-bottom:8px;font-size:13px}.facts dd{font:500 20px/1.3 var(--display);letter-spacing:-.02em}.case-body{grid-template-columns:1fr 1.4fr;gap:64px;display:grid}.case-body p{color:var(--ink-2);font-size:clamp(18px,1.5vw,22px);line-height:1.55}.gallery{grid-template-columns:repeat(2,1fr);gap:16px;margin-top:64px;display:grid}.shot{border-radius:var(--radius);min-height:360px;color:var(--ink-3);background:var(--muted-surface);border:1px dashed #0b0d102e;place-items:center;font-size:14px;display:grid}.shot.big{grid-column:span 2;min-height:520px}.next-case{border-radius:var(--radius);color:#fff;justify-content:space-between;align-items:center;gap:24px;padding:40px;transition:transform .3s;display:flex}.next-case:hover{transform:translateY(-4px)}.next-case.light{color:var(--ink)}.next-case small{text-transform:uppercase;letter-spacing:.08em;opacity:.65;font-size:13px}.next-case h3{margin-top:8px;font-size:clamp(36px,5vw,72px)}.rows{border-top:1px solid var(--line)}.row{border-bottom:1px solid var(--line);grid-template-columns:80px 1.3fr 1.4fr;gap:32px;padding:28px 0;display:grid}.row .n{font:500 14px var(--text);color:var(--accent);padding-top:10px}.row h3{letter-spacing:-.035em;font-size:clamp(28px,3vw,44px);line-height:1.05}.row p{color:var(--ink-2)}.row p+p{margin-top:8px}.row .stack{margin-top:24px}.row .stack span{background:var(--surface);border:1px solid var(--line)}.dark .row,.dark .rows{border-color:var(--dark-line)}.dark .row p{color:#ffffffa6}.fit{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.fit .value{min-height:240px}@media (width<=1024px){.case-body{grid-template-columns:1fr;gap:24px}.row{grid-template-columns:60px 1fr}.row>:last-child{grid-column:2}.fit{grid-template-columns:1fr}}@media (width<=760px){.page-hero,.case-hero{padding-top:120px}.facts{grid-template-columns:1fr;gap:0}.gallery{grid-template-columns:1fr}.shot.big{grid-column:span 1;min-height:360px}.row{grid-template-columns:1fr;gap:12px;padding:36px 0}.row>:last-child{grid-column:1}.next-case{padding:28px}}.value.light-card{background:var(--surface);border-color:var(--line);color:var(--ink)}.value.light-card:hover{background:var(--surface);border-color:var(--accent)}.value.light-card .num{color:var(--accent)}.white-card{background:var(--surface);border:1px solid var(--line);border-radius:calc(var(--radius) * 1.6);padding:clamp(24px,4vw,56px)}#process .white-card{padding:clamp(24px,3vw,44px)}#process .sec-head{margin-bottom:clamp(40px,4.5vw,64px)}@media (width>=1100px){#process .sec-head{flex-wrap:nowrap}#process .sec-head .lead{max-width:400px}}.value,.fit .value{justify-content:flex-start;gap:20px;min-height:0;padding:28px 32px 32px}.value.light-card p{color:var(--ink-2)}.case.has-img{min-height:520px}.case-img{z-index:-1;top:var(--img-top,80px);bottom:var(--img-bottom,auto);height:var(--img-h,calc(100% - 104px));right:var(--img-right,-14%);width:var(--img-w,70%);object-fit:contain;object-position:right center;transition:transform .5s cubic-bezier(.2,.7,.2,1);position:absolute}.case.has-img .case-top,.case.has-img>div:last-child{z-index:1;position:relative}.case.has-img>div:last-child{max-width:33%}.case.has-img.landscape{gap:16px}.case.has-img.landscape .case-img{z-index:0;object-position:right center;flex:1;width:100%;height:auto;min-height:0;max-height:300px;position:relative;inset:auto}.case.has-img.landscape>div:last-child{max-width:100%}.case.has-img.landscape p{max-width:420px}.shot.has-img{border:0;padding:clamp(24px,4vw,64px)}.shot.has-img img{object-fit:contain;width:100%;height:100%;max-height:640px}@media (width<=760px){.case.has-img{justify-content:flex-start;gap:20px;min-height:0}.case.has-img>div:last-child{max-width:none}.case.has-img .case-img{z-index:0;object-position:center;width:100%;height:320px;position:relative;inset:auto}.case.has-img.landscape .case-img{height:auto;max-height:280px}}.case-hero.with-img{padding-bottom:72px}.case-hero-grid{grid-template-columns:1fr;display:grid;position:relative}.case-hero.with-img .case-hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:48px}.case-hero.with-img .h-xl{font-size:clamp(52px,7vw,120px)}.case-hero.with-img .facts{grid-template-columns:1fr 1fr;margin-top:48px}.case-hero.with-img .facts div:last-child{grid-column:span 2}.case-hero-img{object-fit:contain;object-position:center;filter:drop-shadow(0 30px 60px #00000040);width:100%;max-height:600px}.case-hero.landscape .case-hero-img{max-height:480px}.case-hero-glow{z-index:-1;pointer-events:none;width:900px;height:900px;position:absolute;top:50%;right:-150px;transform:translateY(-40%)}@media (width<=1024px){.case-hero.with-img .case-hero-grid{grid-template-columns:1fr;gap:40px}.case-hero-img{max-height:480px}}@media (width<=760px){.case-hero.with-img .facts{grid-template-columns:1fr}.case-hero.with-img .facts div:last-child{grid-column:auto}.case-hero-img{max-height:360px}.case-hero.with-img{padding-bottom:40px}}.stack span{align-items:center;gap:8px;display:inline-flex}.stack span svg{flex:none;width:18px;height:18px}.t-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px;display:grid}.t-col{flex-direction:column;gap:16px;display:flex}@media (width<=760px){.t-grid{grid-template-columns:1fr}.t-col{display:contents}}.marquee-track{align-items:center}.client-logo{-webkit-mask:var(--logo) center / contain no-repeat;mask:var(--logo) center / contain no-repeat;background:#a3a9b1;flex:none;transition:background .2s;display:block}.client-logo:hover{background:var(--ink)}.case.full{grid-column:span 12}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.photo-grid img{aspect-ratio:1600/1107;object-fit:cover;border-radius:var(--radius);width:100%;height:auto;display:block}@media (width<=760px){.photo-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:no-preference){.js [data-blur-words] .bw{opacity:0;filter:blur(10px);display:inline-block}.js [data-blur-words].in .bw{animation:blurIn 1.6s cubic-bezier(.22, 1, .36, 1) var(--wd,0s) both}}@keyframes blurIn{0%{opacity:0;filter:blur(10px)}to{opacity:1;filter:blur()}}@media (width>=1025px){.hero{flex-direction:column;min-height:min(100svh,960px);padding:clamp(112px,15svh,180px) 0 clamp(28px,4svh,56px);display:flex}.hero>.wrap{flex-direction:column;flex:1;width:100%;display:flex}.hero .eyebrow{margin-bottom:clamp(16px,3svh,32px)}.hero h1{font-size:clamp(56px,min(9.4vw,min(100svh,960px)/3 - 166.667px),148px)}.hero-bottom{margin-top:clamp(24px,4svh,48px)}.hero .stats{margin-top:auto}.hero-bottom{margin-bottom:clamp(32px,6svh,96px)}}@media (width<=1024px){.exp-tab.active{display:none}.exp-tabs .exp-panel{min-height:0;margin:8px 0;padding:24px}.exp-tabs .exp-panel .eyebrow{display:none}.exp-tabs .exp-panel h3{margin:0 0 14px;font-size:clamp(22px,5.6vw,28px)}.exp-tabs .exp-panel .stack{margin-top:20px}}@property --np{syntax:"<number>";inherits:true;initial-value:0}.nav{--np:0;-webkit-backdrop-filter:none;background:0 0;border-color:#0000;max-width:none;transition:color .3s,transform .45s cubic-bezier(.2,.7,.2,1)}.nav:before{content:"";z-index:-1;border-radius:inherit;pointer-events:none;border:1px solid var(--dark-line);-webkit-backdrop-filter:blur(16px);opacity:var(--np);background:#15181db8;transition:background .3s,border-color .3s;position:absolute;inset:0}.nav.on-light{background:0 0;border-color:#0000}.nav.on-light:before{border-color:var(--line);background:#fffc}.nav.open:before{opacity:1}.nav.nav-hidden{transform:translate(-50%,calc(-100% - 24px))}@media (width>=1101px){.nav{width:min(100% - 2 * var(--gutter), var(--max) - 2 * var(--gutter));--s:calc((min(100vw - 2 * var(--gutter), var(--max) - 2 * var(--gutter)) - min(1000px, 100vw - 2 * var(--gutter))) / 2);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);padding:8px 0;display:grid}.nav:before{left:calc(var(--s) * var(--np));right:calc(var(--s) * var(--np))}.nav .logo{transform:translateX(calc((var(--s) + 24px) * var(--np)));will-change:transform;grid-area:1/1;justify-self:start}.nav-links{grid-area:1/2;justify-self:center}.nav{pointer-events:none}.nav>*{pointer-events:auto}.nav>.btn,.nav-links{transition:background .2s,color .2s}.nav>.btn{transform:translateX(calc((var(--s) + 8px) * var(--np) * -1));will-change:transform;grid-area:1/3;justify-self:end}}.js [data-mask]{clip-path:inset(0 -160px 100%)}.js [data-mask] img{transform:scale(1.3)}.js [data-mask].in{clip-path:inset(-160px);transition:clip-path 1.3s cubic-bezier(.77,0,.18,1)}.js [data-mask].in img{transition:transform 1.9s cubic-bezier(.16,1,.3,1);transform:scale(1)}.js [data-mask].done{clip-path:none}@media (prefers-reduced-motion:reduce){.js [data-mask]{clip-path:none}.js [data-mask] img{transform:none}}.case.has-img{justify-content:space-between;min-height:580px}.case.has-img .case-img,.case.has-img.landscape .case-img{z-index:-1;object-fit:contain;object-position:center top;width:auto;max-width:86%;height:auto;max-height:calc(100% - 96px);position:absolute;inset:96px auto 0 50%;transform:translate(-50%)}.case:hover .case-img{transform:translate(-50%)translateY(-8px)scale(1.02)}.case.has-img>div:last-child,.case.has-img.landscape>div:last-child{z-index:1;max-width:none;position:relative}.case.has-img p{max-width:520px}.case-blur{pointer-events:none;background:linear-gradient(to bottom, transparent 0%, color-mix(in srgb, var(--c,#120d24) 55%, transparent) 55%, color-mix(in srgb, var(--c,#120d24) 80%, transparent) 100%);height:40%;position:absolute;bottom:0;left:0;right:0}.case-blur i{position:absolute;inset:0}.case-blur i:first-child{-webkit-backdrop-filter:blur(1.5px);-webkit-mask-image:linear-gradient(#0000 0%,#000 20% 40%,#0000 60%);mask-image:linear-gradient(#0000 0%,#000 20% 40%,#0000 60%)}.case-blur i:nth-child(2){-webkit-backdrop-filter:blur(3px);-webkit-mask-image:linear-gradient(#0000 20%,#000 40% 60%,#0000 80%);mask-image:linear-gradient(#0000 20%,#000 40% 60%,#0000 80%)}.case-blur i:nth-child(3){-webkit-backdrop-filter:blur(7px);-webkit-mask-image:linear-gradient(#0000 40%,#000 60% 80%,#0000 100%);mask-image:linear-gradient(#0000 40%,#000 60% 80%,#0000 100%)}.case-blur i:nth-child(4){-webkit-backdrop-filter:blur(14px);-webkit-mask-image:linear-gradient(#0000 60%,#000 80% 100%);mask-image:linear-gradient(#0000 60%,#000 80% 100%)}.case-blur i:nth-child(5){-webkit-backdrop-filter:blur(22px);-webkit-mask-image:linear-gradient(#0000 80%,#000 100%);mask-image:linear-gradient(#0000 80%,#000 100%)}@media (width<=760px){.case.has-img{justify-content:space-between;gap:0;min-height:520px}.case .tags{gap:4px}.case .tag{padding:5px 10px;font-size:11px}.case.has-img .case-img,.case.has-img.landscape .case-img{width:auto;max-width:92%;height:auto;max-height:calc(100% - 104px);top:104px}}.case-phones{z-index:-1;pointer-events:none;justify-content:center;align-items:flex-start;gap:clamp(10px,1.2vw,18px);width:100%;display:flex;position:absolute;top:96px;bottom:0;left:50%;transform:translate(-50%)}.case-phones img{border-radius:clamp(18px,1.8vw,28px);flex:none;width:clamp(120px,11vw,190px);transition:transform 1.4s cubic-bezier(.22,1,.36,1);box-shadow:0 24px 50px #00000059,0 0 0 1px #ffffff1a}.case-phones img:nth-child(odd){transform:translateY(60px)}.case-phones img:nth-child(2n){transform:translateY(0)}.case:hover .case-phones img:nth-child(odd){transform:translateY(44px)}.case:hover .case-phones img:nth-child(2n){transform:translateY(-16px)}.case-phones img:nth-child(2){transition-delay:60ms}.case-phones img:nth-child(3){transition-delay:.12s}.case-phones img:nth-child(4){transition-delay:.18s}@media (width<=760px){.case-phones img:nth-child(n+4){display:none}.case-phones{top:104px}}.case.narrow .case-phones img:nth-child(4),.ind-pair .case-phones img:nth-child(4){display:none}@media (width<=1100px){.nav-links,.nav .btn{display:none}.burger{place-items:center;display:grid}.nav.open{border-radius:24px;flex-wrap:wrap;padding:8px 8px 16px 22px}.nav.open .nav-links{flex-direction:column;order:3;width:100%;margin-top:12px;display:flex}.nav.open .btn{order:4;margin-top:8px;display:inline-flex}}.nav-links a{white-space:nowrap}.cta,.dark{max-width:calc(var(--max) - 2 * var(--gutter));width:calc(100% - 2 * var(--gutter));margin-left:auto;margin-right:auto}.case.has-img .case-img{border-radius:12px}.case.has-img{clip-path:inset(0 round var(--radius));overflow:visible}.case-blur-ff,html.ff .case-blur i{display:none}html.ff .case-blur-ff{pointer-events:none;border-radius:inherit;display:block;position:absolute;inset:0;overflow:hidden;-webkit-mask-image:linear-gradient(#0000 58%,#000 80%);mask-image:linear-gradient(#0000 58%,#000 80%)}html.ff .case-blur-ff>img,html.ff .case-blur-ff>.case-phones{filter:blur(16px)}html.ff .case-blur{z-index:1}body{transition:opacity .45s cubic-bezier(.25,.8,.35,1)}html.page-in body{opacity:0;transition:none}html.page-out body{opacity:0;transition:opacity .3s cubic-bezier(.5,0,.75,0)}html.prerendering *,html.prerendering :before,html.prerendering :after{animation-play-state:paused!important}
