@font-face{font-family:DM Mono;font-style:normal;font-display:swap;font-weight:400;src:url(../media/dm-mono-latin-400-normal.3cj_yefp0d3o_.woff2)format("woff2"),url(../media/dm-mono-latin-400-normal.1uf9q2fklt56m.woff)format("woff")}
@font-face{font-family:DM Mono;font-style:normal;font-display:swap;font-weight:500;src:url(../media/dm-mono-latin-500-normal.2qgt1jvo-spce.woff2)format("woff2"),url(../media/dm-mono-latin-500-normal.3jflfju2uedkn.woff)format("woff")}
@font-face{font-family:Instrument Serif;font-style:normal;font-display:swap;font-weight:400;src:url(../media/instrument-serif-latin-400-normal.2zo21yor93qdc.woff2)format("woff2"),url(../media/instrument-serif-latin-400-normal.1tckdf9uwvrm7.woff)format("woff")}
@font-face{font-family:Instrument Serif;font-style:italic;font-display:swap;font-weight:400;src:url(../media/instrument-serif-latin-400-italic.3bg-hzmj1g17f.woff2)format("woff2"),url(../media/instrument-serif-latin-400-italic.3im7aav-gdfim.woff)format("woff")}
@font-face{font-family:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(../media/newsreader-vietnamese-opsz-normal.34xvym30q9ss9.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:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(../media/newsreader-latin-ext-opsz-normal.1xxc-t8a16su6.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:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(../media/newsreader-latin-opsz-normal.1pv2gabaqveyu.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:Newsreader Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(../media/newsreader-vietnamese-opsz-italic.2cdn4pt2rqmmk.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:Newsreader Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(../media/newsreader-latin-ext-opsz-italic.06gyndi8x7-vl.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:Newsreader Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(../media/newsreader-latin-opsz-italic.15gv-gmajdxy8.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}
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer utilities{.\!visible{visibility:visible!important}.visible{visibility:visible}.absolute{position:absolute}.sticky{position:sticky}.flex{display:flex}.hidden{display:none}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.italic{font-style:italic}}:root{--bg:#f4f2ec;--ink:#0c0c0c;--navy:#0b1a4a;--acc:#14266b;--mono:"DM Mono",ui-monospace,Menlo,monospace;--serif:"Instrument Serif","Times New Roman",serif;--sans:"Newsreader Variable","Newsreader",Georgia,serif;box-sizing:border-box}*,:before,:after{box-sizing:inherit}html{background:var(--bg)}body{background:var(--bg);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;overflow-x:hidden}a{color:inherit}.mono{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;font-size:11px}.rough{filter:url(#rough)}.boil{filter:url(#boil)}#vhs{pointer-events:none;z-index:50;mix-blend-mode:multiply;background:repeating-linear-gradient(0deg,#14141e14 0 1px,#0000 1px 3px),linear-gradient(90deg,#37373c4d,#37373c0d 9%,#0000 22% 78%,#37373c0d 91%,#37373c4d),radial-gradient(at 50% 40%,#0000 60%,#37373c24),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='g'%3E%3CfeTurbulence baseFrequency='.8' numOctaves='2'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .1 0'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23g)'/%3E%3C/svg%3E");width:100%;height:100%;animation:6s linear infinite vh;position:fixed;inset:0}@keyframes vh{to{background-position:0 6px,0 0,0 0,0 0}}#bar{z-index:60;pointer-events:none;height:2px;position:fixed;top:0;left:0;right:0}#loader{z-index:100;background:var(--ink);color:var(--bg);flex-direction:column;justify-content:space-between;padding:28px;transition:transform 1.3s cubic-bezier(.76,0,.24,1);display:flex;position:fixed;inset:0}#loader.out{pointer-events:none;transform:translateY(-101%)}#loader .num{font-family:var(--serif);letter-spacing:-.05em;font-variant-numeric:tabular-nums;align-items:flex-start;margin-left:-.04em;font-size:clamp(150px,40vw,680px);font-style:italic;line-height:.72;display:flex}#loader .num b{font-weight:400}#loader .num sup{font:400 11px var(--mono);letter-spacing:.14em;text-transform:uppercase;margin:.6em 0 0 1.2em;font-style:normal}#lnp{background:var(--bg);transform-origin:0;height:1px;transform:scaleX(var(--p,0));margin-top:18px;transition:transform .1s linear;display:block}#loader .row{justify-content:space-between;display:flex}nav{z-index:40;padding:calc(16px + env(safe-area-inset-top,0px)) 28px 16px;mix-blend-mode:difference;color:#fff;will-change:transform;justify-content:space-between;align-items:center;transition:transform .45s cubic-bezier(.2,.7,.2,1);display:flex;position:fixed;top:0;left:0;right:0}nav.hide{transform:translateY(-101%)}nav:after{content:"";transform-origin:0;background:currentColor;height:1px;transition:transform .9s cubic-bezier(.2,.7,.2,1);position:absolute;bottom:0;left:28px;right:28px;transform:scaleX(0)}nav.sc:after{transform:scaleX(1)}nav a,nav button{color:inherit}.nv-logo{font-family:var(--serif);letter-spacing:-.03em;text-transform:none;font-size:30px;font-style:italic;line-height:1}.nl{gap:4px;display:flex}.nl a{gap:8px;padding:8px 14px;display:inline-flex;position:relative}.nl a i{opacity:.55;font-style:normal}.nl a:before,.nl a:after{opacity:0;transition:opacity .3s,transform .45s cubic-bezier(.2,.7,.2,1);position:absolute;top:8px}.nl a:before{content:"[";left:0;transform:translate(9px)}.nl a:after{content:"]";right:0;transform:translate(-9px)}.nl a:hover:before,.nl a:hover:after,.nl a.on:before,.nl a.on:after,.nl a:focus-visible:before,.nl a:focus-visible:after{opacity:1;transform:none}.mbtn{font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;background:0 0;border:0;padding:8px 0;display:none}.menu{z-index:39;background:var(--ink);color:var(--bg);visibility:hidden;flex-direction:column;justify-content:center;padding:0 28px;transition:transform .9s cubic-bezier(.76,0,.24,1),visibility 0s linear .9s;display:flex;position:fixed;inset:0;transform:translateY(-101%)}.menu.open{visibility:visible;transition-delay:0s,0s;transform:none}.menu a{font-family:var(--serif);border-bottom:1px solid #f4f2ec40;padding:14px 0;font-size:clamp(54px,16vw,120px);font-style:italic;line-height:1;text-decoration:none;display:block}.menu a small{font:11px var(--mono);letter-spacing:.14em;vertical-align:top;margin-right:14px;font-style:normal}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-stopped{overflow:hidden}.lenis.lenis-smooth iframe{pointer-events:none}.hang{right:0;top:max(var(--hdr),min(var(--ang-top),calc(100% + var(--ov) - var(--ah))));width:var(--aw);z-index:0;pointer-events:none;clip-path:inset(100% 0 0);opacity:0;transition:clip-path 1.9s cubic-bezier(.7,0,.2,1) .15s,opacity 1.2s .15s;position:absolute}.hang.in{clip-path:inset(0);opacity:1}.hang img{filter:url(#boil2);will-change:transform;width:100%;height:auto;display:block}.hero .meta,.lede{z-index:1;position:relative}@media (max-width:700px){.nl{display:none}.mbtn{display:block}}nav a{text-decoration:none}section{position:relative}.wrap{padding:0 28px}.hero{--aw:min(32vw,400px);--ah:calc(var(--aw)*547/384);--th:calc(clamp(88px,26vw,420px)*.8);--hg:clamp(28px,4vw,56px);--ov:calc(var(--th) + var(--hg) - 24px);--hdr:88px;--ang-top:13vh;flex-direction:column;justify-content:flex-end;min-height:100vh;padding:0 28px 40px;display:flex;overflow:hidden}.hstage{min-height:calc(var(--hdr) + var(--ah) - var(--ov));flex:1 0 auto;position:relative}@media (max-width:700px){.hero{--aw:54vw;--ang-top:15vh}}.hero .meta{flex-wrap:wrap;justify-content:space-between;gap:16px;margin-bottom:24px;display:flex}.title{font-family:var(--serif);letter-spacing:-.05em;will-change:transform;margin:0;font-size:clamp(88px,26vw,420px);font-style:italic;font-weight:400;line-height:.8;position:relative}.title span{display:block;position:relative}.title.glitch span:before,.title.glitch span:after{content:attr(data-t);opacity:.55;mix-blend-mode:multiply;pointer-events:none;position:absolute;top:0;left:0}.title.glitch span:before{color:var(--acc);transform:translate(5px)}.title.glitch span:after{color:#1a4cff;opacity:.3;transform:translate(-4px)}.lede{max-width:30ch;font-family:var(--sans);color:#0c0c0ccc;text-wrap:balance;margin:28px 0 0;font-size:clamp(18px,1.7vw,23px);line-height:1.35}.seal{opacity:.85;width:clamp(70px,9vw,130px);position:absolute;top:22vh;right:28px}.hr{background:var(--ink);transform-origin:0;height:1px;transition:transform 1.4s cubic-bezier(.2,.7,.2,1);transform:scaleX(0)}.hr.in{transform:scaleX(1)}.marq{border-bottom:1px solid var(--ink);white-space:nowrap;padding:16px 0;overflow:hidden}.marq div{animation:38s linear infinite mq;display:inline-block}.marq span{font-family:var(--mono);letter-spacing:.2em;margin-right:36px;font-size:13px}@keyframes mq{to{transform:translate(-50%)}}.rv{opacity:0;transition:opacity 1.1s,transform 1.1s cubic-bezier(.2,.7,.2,1);transform:translateY(22px)}.rv.in{opacity:1;transform:none}.d1{transition-delay:.12s}.d2{transition-delay:.26s}.works{padding:140px 28px 120px;position:relative}.works h2,.serv h2{font-family:var(--serif);letter-spacing:-.04em;margin:14px 0 60px;font-size:clamp(44px,8vw,120px);font-weight:400;line-height:.9}.proj{border-top:1px solid var(--ink);cursor:pointer;z-index:2;grid-template-columns:70px 1fr auto;align-items:baseline;gap:16px;padding:28px 0;display:grid;position:relative}.proj:last-child{border-bottom:1px solid var(--ink)}.proj h3{font-family:var(--serif);letter-spacing:-.03em;margin:0;font-size:clamp(34px,7vw,104px);font-weight:400;line-height:1;transition:transform .5s cubic-bezier(.2,.7,.2,1),color .3s}.proj:hover h3,.proj.on h3{color:var(--acc);transform:translate(16px)}.proj p{max-width:34ch;font-family:var(--sans);color:#0c0c0cbd;text-wrap:balance;font-feature-settings:"onum","liga";margin:14px 0 0;font-size:clamp(16px,1.3vw,19px);line-height:1.45}#pv{aspect-ratio:4/5;z-index:30;pointer-events:none;opacity:0;clip-path:inset(0 0 100%);will-change:transform;width:min(34vw,440px);transition:opacity .4s,clip-path .6s cubic-bezier(.7,0,.2,1);position:fixed;top:0;left:0}#pv.show{opacity:1;clip-path:inset(0)}#pv .art{opacity:0;flex-direction:column;justify-content:space-between;padding:18px;transition:opacity .45s;display:flex;position:absolute;inset:0;overflow:hidden}#pv .art.on{opacity:1}.art b{font-family:var(--serif);letter-spacing:-.04em;font-size:clamp(34px,5vw,70px);font-weight:400;line-height:.9}.a0{color:#2a160c;background:linear-gradient(160deg,#e9d9c8,#b8845a 70%)}.a1{color:#f4f2ec;background:#0c0c0c radial-gradient(circle at 70% 30%,#1b2f86 0 18%,#0000 19%)}.a2{color:#10201a;background:repeating-linear-gradient(90deg,#e4e8e2 0 24px,#cfd6cc 24px 25px)}.a3{color:#dfe6ff;background:linear-gradient(200deg,#22379a,#0b1a4a)}.art i{aspect-ratio:1;border:1px solid;border-radius:50%;align-self:flex-end;width:55%;display:block}.frame{height:260vh}.frame .stick{background:var(--navy);height:100vh;color:var(--bg);justify-content:center;align-items:center;display:flex;position:sticky;top:0;overflow:hidden}.frame svg{width:100%;height:100%;position:absolute;inset:0}.frame rect{fill:none;stroke:var(--bg);stroke-width:1px}.frame .txt{text-align:center;padding:0 10vw;position:relative}.frame h2{font-family:var(--serif);letter-spacing:-.04em;margin:10px 0 0;font-size:clamp(40px,9vw,140px);font-style:italic;font-weight:400;line-height:.9}.serv{padding:140px 28px clamp(48px,8vh,80px)}.sv{grid-template-columns:70px minmax(0,.9fr) minmax(0,1fr);align-items:baseline;gap:16px;padding:30px 0;transition:padding .5s,opacity 1.1s,transform 1.1s cubic-bezier(.2,.7,.2,1);display:grid;position:relative}.sv .hr{position:absolute;top:0;left:0;right:0}.sv:last-child{height:1px;padding:0}.sv:hover{padding-left:14px}.sv h4{font-family:var(--serif);letter-spacing:-.02em;margin:0;font-size:clamp(26px,3.6vw,52px);font-weight:400}.sv p{max-width:36ch;font-family:var(--sans);color:#0c0c0cbd;text-wrap:pretty;font-feature-settings:"onum","liga";margin:0;font-size:clamp(16px,1.3vw,19px);line-height:1.45}.end{background:var(--ink);color:var(--bg);flex-direction:column;justify-content:space-between;min-height:100vh;padding:clamp(72px,10vh,112px) 28px 40px;display:flex;overflow:hidden}.end h2{font-family:var(--serif);letter-spacing:-.04em;margin:18px 0 40px;font-size:clamp(44px,9vw,140px);font-weight:400;line-height:.9}.btn{border:1px solid var(--bg);padding:18px 30px;text-decoration:none;transition:color .4s;display:inline-block;position:relative;overflow:hidden}.btn:before{content:"";background:var(--bg);z-index:-1;transition:transform .5s cubic-bezier(.7,0,.2,1);position:absolute;inset:0;transform:translateY(101%)}.btn:hover:before{transform:none}.btn:hover,.btn:focus-visible{color:var(--ink)}.btn:focus-visible,.proj:focus-visible,nav a:focus-visible,.lk:focus-visible{outline-offset:4px;outline:2px solid}.lk{border-bottom:1px solid;margin-top:22px;padding-bottom:3px;text-decoration:none;transition:color .3s;display:inline-block}.lk:hover{color:var(--navy)}.end .lk{margin:0}.end .lk:hover{color:var(--bg);opacity:.7}.proj:hover{background:linear-gradient(90deg,#0b1a4a0f,#0000)}.proj .mono:last-child{transition:transform .4s}.proj:hover .mono:last-child{transform:translate(-8px)}.sv:hover h4{color:var(--navy)}.lede,.sv p,.proj p{letter-spacing:-.005em}.btn{isolation:isolate}.end .name{font-family:var(--serif);letter-spacing:-.05em;white-space:nowrap;pointer-events:none;margin:40px 0 0;font-size:clamp(90px,28vw,460px);font-style:italic;line-height:.75}@media (max-width:700px){.proj{grid-template-columns:36px 1fr}.proj .mono:last-child{display:none}.sv{grid-template-columns:36px 1fr}.sv p{grid-column:2}#pv{width:56vw;position:fixed}.seal{top:16vh}}.stack{position:relative}.serv{z-index:1;background:var(--bg);transform-origin:50% 100%;will-change:transform;position:sticky;top:0}.end{z-index:2;box-shadow:0 -40px 80px #0003}.end .fcta{z-index:3;min-width:0;position:relative}.end .top{z-index:3;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);align-items:end;gap:40px;display:grid;position:relative}.end .btn{z-index:3;position:relative}.end .bot{z-index:1;position:relative}.ang{pointer-events:none;justify-self:end;width:min(30vw,340px);margin:0;padding:22px 22px 8px;position:relative}.afr{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.afr rect{fill:none;stroke:var(--bg);stroke-width:1px;vector-effect:non-scaling-stroke;stroke-dasharray:1;stroke-dashoffset:1px}.aim{clip-path:inset(100% 0 0);opacity:0}.aim img{filter:invert()url(#boil2);width:100%;height:auto;display:block}.ang figcaption{text-align:center;opacity:.7;margin-top:10px}@media (max-width:700px){.end .top{grid-template-columns:1fr}.ang{justify-self:start;width:min(62vw,280px)}}.hfoot{z-index:1;margin-top:var(--hg);grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:end;gap:24px;padding-top:22px;display:grid;position:relative}.hfoot:before{content:"";background:var(--ink);transform-origin:0;height:1px;transition:transform 1.4s cubic-bezier(.2,.7,.2,1) .35s;position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.hfoot.in:before{transform:scaleX(1)}.hfoot .hl{align-items:center;gap:14px;margin-bottom:16px;display:flex}.hfoot .hl:before{content:"";background:currentColor;width:34px;height:1px}.hfoot .lede{margin:0}.cta{color:var(--ink);justify-self:end;align-items:center;gap:18px;text-decoration:none;display:inline-flex}.cta .cl{flex-direction:column;align-items:flex-end;gap:8px;display:flex}.cta .ct{font-family:var(--serif);letter-spacing:-.02em;padding:0 .4em;font-size:clamp(30px,3.2vw,46px);font-style:italic;line-height:1;transition:transform .5s cubic-bezier(.2,.7,.2,1);position:relative}.cta .ct:before,.cta .ct:after{opacity:0;font-style:normal;transition:opacity .3s,transform .45s cubic-bezier(.2,.7,.2,1);position:absolute;top:0}.cta .ct:before{content:"[";left:0;transform:translate(.45em)}.cta .ct:after{content:"]";right:0;transform:translate(-.45em)}.cta:hover .ct:before,.cta:hover .ct:after,.cta:focus-visible .ct:before,.cta:focus-visible .ct:after{opacity:1;transform:none}.cta .ca{border:1px solid var(--ink);border-radius:50%;place-items:center;width:58px;height:58px;transition:background .4s,color .4s;display:grid;position:relative;overflow:hidden}.cta .ca b{font:400 20px var(--mono);transition:transform .55s cubic-bezier(.7,0,.2,1);position:absolute}.cta .ca b:last-child{transform:translateY(-160%)}.cta:hover .ca,.cta:focus-visible .ca{background:var(--ink);color:var(--bg)}.cta:hover .ca b:first-child,.cta:focus-visible .ca b:first-child{transform:translateY(160%)}.cta:hover .ca b:last-child,.cta:focus-visible .ca b:last-child{transform:none}.cta:focus-visible{outline-offset:8px;border-radius:40px;outline:2px solid}@media (max-width:700px){.hfoot{grid-template-columns:1fr;gap:18px}.hfoot .hl br{display:none}.cta{justify-self:start}.cta .cl{align-items:flex-start}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.serv{opacity:1!important;position:relative!important;transform:none!important}*{transition-duration:10ms!important;animation:none!important}.rv{opacity:1;transform:none}.hr{transform:none}#loader{display:none}}.skip-link{z-index:200;background:var(--ink);color:var(--bg);padding:12px 18px;text-decoration:none;transition:top .2s;position:fixed;top:-80px;left:16px}.skip-link:focus{top:calc(12px + env(safe-area-inset-top,0px));outline:2px solid var(--bg);outline-offset:3px}.mbtn:focus-visible,.menu a:focus-visible{outline-offset:4px;outline:2px solid}#barf{background:#0b1a4a;width:0;height:100%}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}
