@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/inter-tight-cyrillic-ext-wght-normal.94c2b096.woff2) format("woff2-variations");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/inter-tight-cyrillic-wght-normal.6c613f86.woff2) format("woff2-variations");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/inter-tight-greek-ext-wght-normal.8f0233ef.woff2) format("woff2-variations");unicode-range:u+1f??}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/inter-tight-greek-wght-normal.ec944915.woff2) format("woff2-variations");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/inter-tight-vietnamese-wght-normal.b99ed083.woff2) format("woff2-variations");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/inter-tight-latin-ext-wght-normal.bd67fbcd.woff2) format("woff2-variations");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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 Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/inter-tight-latin-wght-normal.a7560406.woff2) format("woff2-variations");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}:root{--bg:#f4f3f0;--fg:#10100f;--muted:#10100f99;--line:#10100f24;--accent:#ff5b1f;--gx:clamp(16px,2.6vw,44px);--gy:clamp(18px,2.8vw,40px);--ease:cubic-bezier(0.22,1,0.36,1)}*{box-sizing:border-box;margin:0;padding:0}body,html{height:100%}body{background:var(--bg);color:var(--fg);font-family:Inter Tight Variable,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}a{text-decoration:none}a,button{color:inherit}button{font:inherit;background:none;border:0;cursor:pointer}img,video{display:block;max-width:100%}::selection{background:var(--fg);color:var(--bg)}.label{font-size:11px;letter-spacing:.06em;text-transform:uppercase;line-height:1.35}.muted{color:var(--muted)}.webgl{position:fixed;inset:0;z-index:0}.webgl[data-interactive=false]{pointer-events:none}.webgl canvas{touch-action:pan-y}.site-nav{position:fixed;top:var(--gy);right:var(--gx);z-index:40;display:flex;flex-direction:column;align-items:flex-end;gap:4px}.site-nav a{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);transition:color .3s}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--fg);font-weight:600}.back-circle{position:fixed;top:var(--gy);left:var(--gx);z-index:40;width:40px;height:40px;border-radius:50%;background:var(--fg);display:grid;place-items:center;transition:transform .4s var(--ease)}.back-circle:hover{transform:scale(1.12)}.back-circle svg{width:18px;height:18px;fill:none;stroke:var(--bg);stroke-width:2}.page{position:relative;z-index:10;min-height:100svh;pointer-events:none}.page .interactive,.page a,.page button{pointer-events:auto}.home-profile{position:fixed;top:var(--gy);left:var(--gx);z-index:10}.home-profile h1{font-size:clamp(30px,3.4vw,54px);font-weight:500;letter-spacing:-.02em;line-height:1;margin-top:6px;text-transform:uppercase}.home-meta{position:fixed;left:var(--gx);bottom:var(--gy);z-index:10;display:grid;grid-template-columns:repeat(3,minmax(120px,210px));grid-gap:16px;gap:16px}.home-meta>div{border-top:1px solid var(--line);padding-top:8px}.home-meta dt{color:var(--muted);margin-bottom:4px}.home-hint{position:fixed;right:var(--gx);bottom:var(--gy);z-index:10;text-align:right}.projects-intro{position:absolute;top:calc(var(--gy) + 90px);left:var(--gx)}.projects-intro h1{font-size:clamp(22px,2vw,32px);font-weight:500;letter-spacing:-.015em;line-height:1.12;margin-top:10px;max-width:14em}.marquee{position:fixed;left:0;right:0;top:50%;height:46vh;transform:translateY(-30%);overflow:visible;pointer-events:auto;touch-action:pan-y;-webkit-user-select:none;-moz-user-select:none;user-select:none}.marquee__track{position:absolute;top:0;left:0;height:100%;display:flex;align-items:center;will-change:transform}.marquee__item{flex:none;margin-right:clamp(14px,1.8vw,28px);overflow:hidden;background:#e2e0dc;cursor:none}.marquee__item img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease);pointer-events:none}.marquee__item:hover img{transform:scale(1.06)}.marquee__caption{position:fixed;left:var(--gx);bottom:var(--gy);z-index:10}.marquee__caption strong{display:block;font-size:13px;font-weight:600;margin-top:3px;text-transform:none;letter-spacing:0}.detail{position:fixed;inset:0;z-index:50;background:var(--bg);display:grid;grid-template-columns:minmax(280px,.36fr) 1fr;grid-gap:clamp(20px,3vw,56px);gap:clamp(20px,3vw,56px);padding:calc(var(--gy) + 70px) var(--gx) calc(var(--gy) + 70px);pointer-events:auto}.detail__close{position:absolute;top:var(--gy);left:var(--gx)}.detail__text{align-self:center}.detail__text h2{font-size:clamp(40px,5vw,84px);font-weight:500;letter-spacing:-.035em;line-height:.95;margin:10px 0 22px}.detail__text p.summary{font-size:15px;line-height:1.5;max-width:28em}.detail__meta{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px;margin:26px 0 30px;max-width:30em}.detail__meta>div{border-top:1px solid var(--line);padding-top:8px}.detail__meta dt{color:var(--muted);margin-bottom:4px}.pill{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--fg);border-radius:999px;padding:10px 18px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;transition:background .3s,color .3s}.pill:hover{background:var(--fg);color:var(--bg)}.detail__media{position:relative;align-self:center;height:100%;max-height:70vh}.detail__media img,.detail__media video{width:100%;height:100%;object-fit:cover}.detail__thumbs{position:absolute;right:var(--gx);bottom:var(--gy);display:flex;gap:6px}.detail__thumbs button{width:34px;height:24px;overflow:hidden;opacity:.45;transition:opacity .3s;outline:1px solid transparent}.detail__thumbs button[aria-current=true]{opacity:1;outline-color:var(--fg);outline-offset:2px}.detail__thumbs button:hover{opacity:1}.detail__thumbs img{width:100%;height:100%;object-fit:cover}.detail__clone{position:fixed;z-index:60;object-fit:cover;pointer-events:none}.center-page{max-width:760px;margin:0 auto;padding:calc(var(--gy) + 110px) var(--gx) 120px;text-align:center}.center-page h1{font-size:clamp(36px,4.8vw,72px);font-weight:500;letter-spacing:-.035em;line-height:1.02;margin:14px 0 34px}.center-page .body{border-top:1px solid var(--line);padding-top:26px;font-size:15px;line-height:1.6;max-width:36em;margin:0 auto}.about-meta{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:18px;gap:18px;margin-top:36px;text-align:left}.about-meta>div{border-top:1px solid var(--line);padding-top:8px}.about-meta dt{color:var(--muted);margin-bottom:6px}.about-meta dd{font-size:11px;letter-spacing:.06em;text-transform:uppercase;line-height:1.6}.arrow-link{display:inline-flex;align-items:center;gap:6px}.arrow-link svg{width:12px;height:12px;fill:currentColor;transition:transform .3s var(--ease)}.arrow-link:hover svg{transform:translate(2px,-2px)}.contact-links{display:flex;flex-direction:column;align-items:center;gap:8px;border-top:1px solid var(--line);padding-top:22px;max-width:420px;margin:0 auto}.contact-links a{font-size:clamp(16px,1.5vw,22px);font-weight:500}.preloader{position:fixed;inset:0;z-index:100;display:grid;place-items:center;pointer-events:auto}.preloader svg,.wipe svg{position:absolute;inset:0;width:100%;height:100%}.preloader__text{position:relative;color:#f4f3f0;font-size:12px;font-weight:600;letter-spacing:.18em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.wipe{inset:0;z-index:90}.cursor,.wipe{position:fixed;pointer-events:none}.cursor{top:0;left:0;z-index:200}.cursor__dot{width:8px;height:8px;border-radius:50%;background:var(--fg);transform:translate(-50%,-50%);transition:transform .35s var(--ease),opacity .3s}.cursor__pill{position:absolute;left:0;top:0;transform:translate(-50%,-50%) scale(.4);opacity:0;white-space:nowrap;background:var(--fg);color:var(--bg);border-radius:999px;padding:9px 14px;font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;transition:transform .4s var(--ease),opacity .3s}.cursor[data-active=true] .cursor__pill{opacity:1;transform:translate(-50%,-50%) scale(1)}.cursor[data-active=true] .cursor__dot{opacity:0}@media (hover:none){.cursor{display:none}.marquee__item{cursor:pointer}}[data-reveal]{opacity:0;transform:translate3d(0,16px,0)}@media (max-width:760px){.home-meta{grid-template-columns:1fr 1fr;right:var(--gx)}.home-hint,.home-meta>div:last-child{display:none}.detail{grid-template-columns:1fr;grid-template-rows:auto auto;overflow-y:auto;align-content:start}.detail__media{height:46vh;order:-1}.detail__text h2{font-size:40px}.detail__thumbs{display:none}.about-meta{grid-template-columns:1fr}.marquee{height:38vh}}@media (prefers-reduced-motion:reduce){[data-reveal]{opacity:1;transform:none}}