@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/bricolage-grotesque-vietnamese-wght-normal.BUzh504Q.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-wght-normal.CcLUaPy7.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-wght-normal.DLoelf7F.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 Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/_astro/instrument-sans-latin-ext-wght-normal.B5bTHO_g.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:Instrument Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/_astro/instrument-sans-latin-wght-normal.BbzFLZTg.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:DM Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/dm-mono-latin-ext-400-normal.C2zvOubV.woff2)format("woff2"),url(/_astro/dm-mono-latin-ext-400-normal.1aZr6b2b.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:DM Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/dm-mono-latin-400-normal.4GdczIuU.woff2)format("woff2"),url(/_astro/dm-mono-latin-400-normal.-0xN8mdc.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:DM Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/dm-mono-latin-ext-500-normal.BtRyHRi6.woff2)format("woff2"),url(/_astro/dm-mono-latin-ext-500-normal.Dw3M13d8.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:DM Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/dm-mono-latin-500-normal.DRMDZjhP.woff2)format("woff2"),url(/_astro/dm-mono-latin-500-normal.CN8Miw6E.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:#101012;--paper:#f4f2ec;--accent:#2536ff;--lemon:#ffd93d;--pop:#ff5a36;--line:2px solid var(--ink);--font-display:"Bricolage Grotesque Variable", system-ui, sans-serif;--font-body:"Instrument Sans Variable", system-ui, sans-serif;--font-mono:"DM Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--gutter:clamp(16px, 3vw, 40px);--maxw:1600px;--radius:20px;--ease:cubic-bezier(.2, .7, .2, 1);color-scheme:light}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;font-size:17px;line-height:1.5}img,video,svg{max-width:100%;display:block}img{height:auto}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}h1,h2,h3,p,figure,dl,dd,ul,ol{margin:0}ul,ol{padding:0;list-style:none}[hidden]{display:none!important}[id]{scroll-margin-top:88px}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}::selection{background:var(--lemon)}.wrap{width:100%;max-width:var(--maxw);padding-inline:var(--gutter);margin-inline:auto}.section{padding-block:64px 32px}.mono{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;font-size:14px}.h-section{font-family:var(--font-display);letter-spacing:-.04em;text-transform:uppercase;font-size:clamp(44px,7vw,104px);font-weight:800;line-height:.9}.pill{border:var(--line);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;background:var(--paper);color:var(--ink);border-radius:999px;align-items:center;padding:6px 12px;font-size:13px;display:inline-flex}.btn{border:var(--line);min-height:48px;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.04em;cursor:pointer;transition:transform .25s var(--ease), background .25s;border-radius:999px;align-items:center;gap:10px;padding:14px 26px;font-size:15px;display:inline-flex}.btn:hover{transform:translateY(-2px)}.btn--ink{background:var(--ink);color:var(--paper)}.btn--ghost{background:0 0}.btn--lemon{background:var(--lemon);color:var(--ink)}.btn--sm{min-height:44px;padding:10px 20px;font-size:14px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip{z-index:100;background:var(--ink);color:var(--paper);border-radius:999px;padding:12px 18px;position:absolute;top:-80px;left:16px}.skip:focus{top:12px}.line{margin:-.06em -.12em -.12em;padding:.06em .12em .12em;display:block;overflow:hidden}.line>span{display:inline-block}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}.js [data-reveal]{opacity:0;transform:translateY(32px)}.js [data-lines]:not(h1) .line>span{transform:translateY(110%)}.js [data-reveal].is-in{opacity:1;transform:none}.js [data-reveal].is-in:not(.is-static){animation:reveal-in .8s var(--ease) var(--d,0s) backwards}.js [data-lines]:not(h1).is-in .line>span{animation:1s cubic-bezier(.16,1,.3,1) backwards hero-rise;transform:none}.js [data-lines]:not(h1).is-in .line:nth-child(2)>span{animation-delay:.1s}.js [data-lines]:not(h1).is-in .line:nth-child(3)>span{animation-delay:.2s}[data-float]{animation:3s ease-in-out infinite alternate float}[data-parallax]{transform:scale(1.1)}.js h1[data-lines] .line>span{animation:1.1s cubic-bezier(.16,1,.3,1) both hero-rise}.js h1[data-lines] .line:nth-child(2)>span{animation-delay:.12s}.js h1[data-lines] .line:nth-child(3)>span{animation-delay:.24s}.js h1[data-lines] .line:nth-child(4)>span{animation-delay:.36s}.js h1[data-lines] .line:nth-child(n+5)>span{animation-delay:.48s}.js .hero [data-reveal]{animation:hero-fade .9s var(--ease) .5s both}.js [data-intro]{animation:hero-fade .9s var(--ease) calc(.25s + var(--intro,0) * 80ms) both}.js .hero .sticker{animation:.9s cubic-bezier(.34,1.56,.64,1) .9s both sticker-pop}.js.motion-failsafe [data-reveal]{opacity:1;transform:none}.js.motion-failsafe [data-lines] .line>span{transform:none}}@keyframes reveal-in{0%{opacity:0;transform:translateY(32px)}}@keyframes float{0%{transform:translateY(-8px)}to{transform:translateY(8px)}}@keyframes hero-rise{0%{transform:translateY(110%)}to{transform:none}}@keyframes hero-fade{0%{opacity:0;transform:translateY(32px)}to{opacity:1;transform:none}}@keyframes sticker-pop{0%{transform:scale(.7)rotate(-10deg)}to{transform:scale(1)rotate(-2deg)}}.site-header{z-index:50;background:color-mix(in srgb, var(--paper) 96%, transparent);transition:transform .4s var(--ease);position:sticky;top:0}.site-header.is-hidden{transform:translateY(-100%)}.site-header__inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 24px;padding-block:12px;display:flex}.logo{font-family:var(--font-display);letter-spacing:-.03em;padding-block:8px;font-size:26px;font-weight:800}.logo span{color:var(--accent)}.nav{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.04em;flex-wrap:wrap;align-items:center;gap:0 28px;font-size:14px;display:flex}.nav a:not(.btn){transition:background-size .3s var(--ease);background:linear-gradient(currentColor,currentColor) 0 100%/0 2px no-repeat;padding-block:12px;display:inline-block}.nav a:not(.btn):hover,.nav a[aria-current=page]{background-size:100% 2px}.hero{padding-block:clamp(24px,5vw,64px) 48px}.hero__eyebrow{flex-wrap:wrap;gap:6px 24px;margin-bottom:28px;display:flex}.hero__title{font-family:var(--font-display);letter-spacing:-.045em;text-transform:uppercase;font-size:clamp(52px,13vw,224px);font-weight:800;line-height:.9}.sticker{background:var(--accent);color:var(--paper);border-radius:.12em;padding:.02em .14em .08em;font-style:normal;display:inline-block;transform:rotate(-2deg)}.hero__row{flex-wrap:wrap;align-items:center;gap:24px 40px;margin-top:40px;display:flex}.hero__intro{flex:360px;max-width:560px;font-size:clamp(18px,1.6vw,22px)}.hero__head{position:relative}.hero__stamp{position:absolute;bottom:-16%;right:clamp(8px,6vw,120px)}.hero__stamp--row{display:none}.hero__badge{aspect-ratio:1;text-align:center;border:var(--line);background:var(--lemon);width:clamp(96px,13vw,210px);font-family:var(--font-mono);text-transform:uppercase;border-radius:50%;place-items:center;font-size:clamp(11px,1.15vw,18px);line-height:1.3;display:grid;transform:rotate(12deg)}.chips{flex-wrap:wrap;gap:14px;margin-top:36px;display:flex}.chip{border:var(--line);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.04em;transform:rotate(var(--r,0deg));border-radius:999px;padding:10px 18px;font-size:14px;display:inline-block}.chip--lemon{background:var(--lemon)}.chip--paper{background:var(--paper)}.chip--pop{background:var(--pop)}.chip--ink{background:var(--ink);color:var(--paper)}.chip--accent{background:var(--accent);color:var(--paper)}.marquee{padding-block:28px;overflow:hidden}.marquee__band{background:var(--ink);color:var(--paper);white-space:nowrap;font-family:var(--font-display);text-transform:uppercase;letter-spacing:-.02em;margin-inline:-24px;padding-block:16px;font-size:clamp(28px,4vw,48px);font-weight:800;display:flex;transform:rotate(-1.2deg)}.marquee__group{flex:none;gap:.6em;padding-right:.6em;animation:32s linear infinite marquee;display:flex}.marquee__group span:after{content:"+";margin-left:.6em}@keyframes marquee{to{transform:translate(-100%)}}@media (prefers-reduced-motion:reduce){.marquee__group{animation:none}}.work__head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:28px;display:flex}.work__count{font-family:var(--font-mono);letter-spacing:0;vertical-align:top;font-size:.22em;font-weight:400}.filters{flex-wrap:wrap;gap:8px;display:flex}.filter{border:var(--line);min-height:44px;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.04em;cursor:pointer;background:0 0;border-radius:999px;padding:10px 18px;font-size:14px;transition:background .2s,color .2s}.filter:hover{background:color-mix(in srgb, var(--ink) 8%, transparent)}.filter[aria-pressed=true]{background:var(--ink);color:var(--paper)}.grid{--cols:3;--gap:20px;grid-template-columns:repeat(var(--cols), minmax(0, 1fr));align-items:start;column-gap:16px;display:grid}@media (width<=1023px){.grid{--cols:2}}@media (width<=639px){.grid{--cols:1}}.card{break-inside:avoid;margin-bottom:20px;display:block}.card__link{display:block}.card__media{border:var(--line);border-radius:var(--radius);background:var(--ink);position:relative;overflow:hidden}.card__img{width:100%;transition:transform .9s var(--ease)}.card__alt,.card__loop{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity .35s;position:absolute;inset:0}.card__media.is-playing .card__loop{opacity:1}.card__link:is(:hover,:focus-visible) .card__img{transform:scale(1.04)}.card__link:is(:hover,:focus-visible) .card__alt,.card__link:is(:hover,:focus-visible) .card__loop{opacity:1}.card__tag{position:absolute;top:12px;left:12px}.card__meta{justify-content:space-between;align-items:baseline;gap:12px;padding:12px 4px 0;display:flex}.card__title{font-family:var(--font-display);letter-spacing:-.02em;font-size:22px;font-weight:700;line-height:1.15}.card__client{font-family:var(--font-mono);letter-spacing:.02em;opacity:.7;margin-top:4px;font-size:12px}.card__year{font-family:var(--font-mono);font-size:13px}.more{justify-content:center;margin-top:24px;display:flex}.focus-center{object-position:center}.focus-top{object-position:center top}.focus-bottom{object-position:center bottom}.focus-left{object-position:left center}.focus-right{object-position:right center}.skills{border-top:var(--line)}.skill{border-bottom:var(--line);flex-wrap:wrap;align-items:center;gap:12px 32px;padding-block:28px;display:flex}.skill__mark{background:linear-gradient(var(--lemon), var(--lemon)) no-repeat 0 88% / 0 .5em;-webkit-box-decoration-break:clone;box-decoration-break:clone;transition:background-size .45s var(--ease)}.skill:hover .skill__mark{background-size:100% .5em}.skill__n,.skill__name{transition:transform .4s var(--ease)}.skill:hover .skill__n,.skill:hover .skill__name{transform:translate(16px)}.skill__n{width:40px;font-family:var(--font-mono);font-size:14px}.skill__name{font-family:var(--font-display);letter-spacing:-.03em;text-transform:uppercase;flex:320px;font-size:clamp(32px,5vw,72px);font-weight:800;line-height:1}.skill__desc{flex:260px;max-width:420px}.skill__tools{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.skill__tools li{height:40px;transition:transform .3s var(--ease);display:flex}.skill__tools li:hover{transform:translateY(-4px)rotate(-6deg)}.skill__tools img{width:auto;height:100%}.about-block{border:var(--line);background:var(--accent);color:var(--paper);border-radius:32px;flex-wrap:wrap;align-items:center;gap:40px;padding:clamp(24px,5vw,64px);display:flex}.arch{isolation:isolate;flex:0 320px;min-width:240px;position:relative}.arch:before{content:"";z-index:-1;border:var(--line);background:var(--lemon);border-radius:20px;position:absolute;inset:0;transform:translate(14px,14px)rotate(3deg)}.arch img{aspect-ratio:4/5;object-fit:cover;border:var(--line);border-radius:20px;width:100%;display:block}.about-block__body{flex:420px;min-width:0}.about-block__statement{font-family:var(--font-display);letter-spacing:-.035em;margin-block:16px 24px;font-size:clamp(32px,4.6vw,64px);font-weight:800;line-height:1}.site-footer{padding-block:64px 28px}.footer__title{font-family:var(--font-display);letter-spacing:-.05em;text-transform:uppercase;margin-block:12px 24px;font-size:clamp(28px,5vw,72px);font-weight:800;line-height:.9}.footer__title .dot{color:var(--accent)}.footer__bottom a{padding-block:8px}.section__title{margin-bottom:32px}.about-page .arch{max-width:460px}.footer__mail{font-family:var(--font-display);letter-spacing:-.02em;text-underline-offset:6px;font-size:clamp(22px,3.6vw,52px);font-weight:700;text-decoration:underline 3px;display:inline-block}.footer__links{flex-wrap:wrap;gap:12px;margin-top:32px;display:flex}.footer__links a{border:var(--line);min-height:44px;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.04em;border-radius:999px;align-items:center;padding:10px 20px;font-size:14px;transition:background .2s;display:inline-flex}.footer__links a:hover{background:var(--lemon)}.footer__bottom{border-top:var(--line);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.04em;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:56px;padding-top:20px;font-size:13px;display:flex}.pd__back{align-items:center;min-height:44px;margin-top:8px;display:inline-flex}.pd__head{grid-template-columns:minmax(0,1fr);grid-template-areas:"info""cover""prose";gap:32px;padding-block:16px 48px;display:grid}.pd__info{grid-area:info}.pd__cover{grid-area:cover}.pd__head .pd__prose{grid-area:prose;margin-bottom:0}@media (width>=900px){.pd__head{grid-template:"info cover""prose cover"1fr/minmax(0,1.2fr) minmax(0,.8fr);align-items:start;gap:32px 48px}.pd__cover{position:sticky;top:88px}}.pd__title{font-family:var(--font-display);letter-spacing:-.04em;text-transform:uppercase;margin-block:16px 20px;font-size:clamp(40px,6vw,96px);font-weight:800;line-height:.92}.pd__summary{max-width:52ch;font-size:clamp(18px,1.6vw,22px)}.pd__meta{border-top:var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 24px;margin-top:32px;padding-top:24px;display:grid}.pd__meta dt{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;opacity:.7;margin-bottom:4px;font-size:12px}.pd__tags{flex-wrap:wrap;gap:8px;display:flex}.pd__cover{border:var(--line);border-radius:var(--radius);background:var(--ink);overflow:hidden}.pd__cover img{width:100%}.video{margin-bottom:56px}.video__frame{width:min(100%, calc(80vh * var(--ar,1.7778)));width:min(100%, calc(80svh * var(--ar,1.7778)));border:var(--line);border-radius:var(--radius);background:var(--ink);margin-inline:auto;position:relative;overflow:hidden}.video__frame iframe,.video__facade,.video__placeholder{border:0;width:100%;height:100%;position:absolute;inset:0}.video__facade{background:var(--ink);cursor:pointer;padding:0}.video__poster{object-fit:cover;opacity:.85;width:100%;height:100%;transition:opacity .3s, transform .8s var(--ease)}.video__facade:is(:hover,:focus-visible) .video__poster{opacity:1;transform:scale(1.03)}.video__play{border:var(--line);background:var(--lemon);width:84px;height:84px;transition:transform .3s var(--ease);border-radius:50%;place-items:center;margin:-42px 0 0 -42px;display:grid;position:absolute;top:50%;left:50%}.video__facade:is(:hover,:focus-visible) .video__play{transform:scale(1.1)rotate(-6deg)}.video__placeholder{text-align:center;color:var(--paper);background:repeating-linear-gradient(45deg,#1b1b1f 0 14px,#232329 14px 28px);place-items:center;padding:24px;display:grid}.video__caption{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.04em;flex-wrap:wrap;justify-content:center;gap:4px 16px;margin-top:14px;font-size:13px;display:flex}.video__caption a{text-underline-offset:4px;text-decoration:underline}.subhead{font-family:var(--font-display);letter-spacing:-.03em;text-transform:uppercase;margin-bottom:20px;font-size:clamp(28px,3.4vw,44px);font-weight:800}.subhead--sm{letter-spacing:-.02em;font-size:clamp(18px,2vw,26px)}.gallery{--cols:2;--gap:16px;columns:var(--cols);column-gap:16px;margin-bottom:56px}@media (width<=767px){.gallery{--cols:1}}.gallery__item{break-inside:avoid;margin-bottom:16px}.gallery__item--wide{column-span:all}.is-masonry{grid-template-columns:repeat(var(--cols), minmax(0, 1fr));grid-auto-rows:1px;align-items:start;gap:0 16px;display:grid}.is-masonry>*{margin-bottom:0}.gallery__item img{border:var(--line);border-radius:var(--radius);width:100%}.gallery__item figcaption{font-family:var(--font-mono);padding:8px 4px 0;font-size:13px}.prose{max-width:68ch;margin-bottom:56px;font-size:19px}.prose>*+*{margin-top:1em}.prose h2,.prose h3{font-family:var(--font-display);letter-spacing:-.02em;margin-top:1.6em;font-weight:800}.prose a{text-underline-offset:4px;text-decoration:underline}.prose ul{padding-left:1.2em;list-style:outside}.pd__nav{border-top:var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding-block:32px 8px;display:grid}.pd__nav a{padding-block:8px;display:block}.pd__nav a:last-child{text-align:right}.pd__nav strong{font-family:var(--font-display);letter-spacing:-.02em;margin-top:4px;font-size:clamp(20px,2.4vw,32px);line-height:1.1;display:block}.about-page{grid-template-columns:1fr;gap:40px;padding-block:16px 56px;display:grid}@media (width>=900px){.about-page{grid-template-columns:clamp(340px,30vw,460px) minmax(0,1fr);align-items:center;gap:clamp(40px,5vw,80px)}}.about-page__bio{max-width:64ch}@media (width>=900px){.about-page__bio .about-block__statement{font-size:clamp(28px,2.8vw,44px);line-height:1.05}.about-page__bio p:not(.about-block__statement){font-size:clamp(18px,1.35vw,22px)}}.about-page__bio>*+*{margin-top:1em}.about-page__bio p{font-size:19px}.exp__row{border-bottom:var(--line);grid-template-columns:1fr;gap:4px 32px;padding-block:24px;display:grid}@media (width>=768px){.exp__row{grid-template-columns:200px minmax(0,1fr)}}.exp__period{font-family:var(--font-mono);font-size:14px}.exp__role{font-family:var(--font-display);letter-spacing:-.02em;font-size:26px;font-weight:700;display:block}.exp__place{display:block}.exp__summary{cursor:pointer;justify-content:space-between;align-items:flex-start;gap:16px;list-style:none;display:flex}.exp__summary::-webkit-details-marker{display:none}.exp__icon{border:var(--line);width:36px;height:36px;transition:background .2s, transform .35s var(--ease);border-radius:50%;flex:none;position:relative}.exp__icon:before,.exp__icon:after{content:"";background:currentColor;width:14px;height:2px;margin:-1px 0 0 -7px;position:absolute;top:50%;left:50%}.exp__icon:after{transform:rotate(90deg)}.exp__summary:hover .exp__icon{background:var(--lemon)}.exp__item[open] .exp__icon{background:var(--lemon);transform:rotate(45deg)}.exp__item p{max-width:68ch;padding-top:12px}@media (prefers-reduced-motion:no-preference){.exp__item{interpolate-size:allow-keywords}.exp__item::details-content{block-size:0;transition:block-size .35s var(--ease), content-visibility .35s allow-discrete;overflow:clip}.exp__item[open]::details-content{block-size:auto}}.tags{flex-wrap:wrap;gap:10px;display:flex}.clients{align-items:center;gap:28px 48px}.client-logo{align-items:center;height:56px;display:flex}.client-logo img{object-fit:contain;filter:grayscale();opacity:.75;width:auto;max-width:180px;height:100%;transition:filter .3s,opacity .3s}.client-logo:hover img{filter:none;opacity:1}.nf{text-align:center;padding-block:12vh}.nf__code{font-family:var(--font-display);letter-spacing:-.06em;color:#0000;-webkit-text-stroke:3px var(--ink);font-size:clamp(120px,28vw,380px);font-weight:800;line-height:.8}@media (prefers-reduced-motion:no-preference){@view-transition{navigation:auto}::view-transition-old(root){animation:.12s both vt-out}::view-transition-new(root){animation:.2s both vt-in}}@keyframes vt-out{to{opacity:0}}@keyframes vt-in{0%{opacity:0}}@media (width<=699px){.hero__title{font-size:17vw}.hero__head .hero__stamp{display:none}.hero__row{position:relative}.hero__stamp--row{display:block;bottom:-22px;right:4px}.hero__badge{width:84px;font-size:11px}.site-header__inner{flex-wrap:nowrap;gap:12px;padding-block:6px}.logo{padding-block:6px;font-size:22px}.nav{letter-spacing:.02em;flex-wrap:nowrap;gap:0 14px;font-size:12px}.nav a:not(.btn){padding-block:10px}.nav .btn--sm{padding-inline:12px}.chips{display:none}.hero__row{margin-top:28px}.section{padding-block:44px 16px}.skill{padding-block:20px}.filters{margin-inline:calc(var(--gutter) * -1);padding-inline:var(--gutter);scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.filters::-webkit-scrollbar{display:none}.filter{flex:none;min-height:44px;padding:8px 14px;font-size:13px}.grid{--cols:2;column-gap:12px}.card{margin-bottom:18px}.card__meta{flex-direction:column;align-items:flex-start;gap:2px;padding-top:8px}.card__title{font-size:16px;line-height:1.2}.card__client{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:2px;font-size:12px;display:-webkit-box;overflow:hidden}.card__year{opacity:.7;font-size:12px}.card__tag{padding:4px 8px;font-size:11px;top:8px;left:8px}.about-page{gap:24px;padding-block:4px 24px}.about-page .arch{max-width:220px}.about-page__bio p{font-size:16px}.about-page__bio>*+*{margin-top:.8em}.exp__row{padding-block:16px}.exp__role{font-size:20px;line-height:1.2}.exp__icon{width:32px;height:32px}.exp__row p{font-size:15px;line-height:1.5}.client-logo{height:44px}.nav a:not(.btn){position:relative}.nav a:not(.btn):after{content:"";position:absolute;inset:-4px -7px}.nav .btn--sm{min-height:44px}.footer__mail{position:relative}.footer__mail:after{content:"";position:absolute;inset:-8px 0}.footer__bottom a{padding-block:13px}.video__caption a{padding-block:12px}}@media (width<=359px){.nav{gap:0 10px;font-size:11px}}@media (hover:none){.skill.is-in .skill__mark{background-size:100% .5em}}
