@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media (prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*),[data-astro-transition-scope]{animation:none!important}}.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}@font-face{font-family:Anton;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/anton-vietnamese-400-normal.CkBxLiRJ.woff2)format("woff2"),url(/_astro/anton-vietnamese-400-normal.2FfR1wHA.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:Anton;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/anton-latin-ext-400-normal.SyiqE2Jt.woff2)format("woff2"),url(/_astro/anton-latin-ext-400-normal.BMODBQc6.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:Anton;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/anton-latin-400-normal.Byf51wtH.woff2)format("woff2"),url(/_astro/anton-latin-400-normal.AUNGEG_V.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:Archivo Black;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/archivo-black-latin-ext-400-normal.DQAASfvW.woff2)format("woff2"),url(/_astro/archivo-black-latin-ext-400-normal.-j5WRK12.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:Archivo Black;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/archivo-black-latin-400-normal.BTVu2TQR.woff2)format("woff2"),url(/_astro/archivo-black-latin-400-normal.HW9MwEcM.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:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/archivo-vietnamese-wght-normal.XAtsl5Q_.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:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/archivo-latin-ext-wght-normal.C4zznr8T.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:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/archivo-latin-wght-normal.E0tuGl4L.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{--red:#d6111e;--red-hot:#f5192b;--red-deep:#8d0a13;--ink:#0c0c0c;--paper:#f2f2f0;--cyan:#35e0d2;--display:"Anton", Impact, sans-serif;--display-alt:"Archivo Black", "Arial Black", sans-serif;--body:"Archivo Variable", system-ui, sans-serif;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{background:var(--ink)}body{font-family:var(--body);color:var(--paper);-webkit-font-smoothing:antialiased;margin:0}h1,h2,p{margin:0;font-weight:400}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}.sr{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.screen{isolation:isolate;min-height:100dvh;position:relative;overflow:clip}.layer{translate:calc(var(--px,0) * var(--depth) * -5px) calc(var(--py,0) * var(--depth) * -5px)}.cutout:empty{background:var(--ink);clip-path:polygon(22% 8%,48% 0,74% 6%,82% 26%,70% 40%,100% 58%,96% 100%,4% 100%,0 62%,26% 42%,16% 24%)}.cutout img{width:100%;height:100%;display:block}.box{background:var(--paper);max-width:52ch;color:var(--ink);clip-path:polygon(0 0,100% 2%,98% 100%,3% 94%);padding:1.25rem 1.5rem 1.75rem;font-size:1.05rem;line-height:1.5}.tag{background:var(--paper);color:var(--ink);font-family:var(--display);text-transform:uppercase;padding:.2em .6em;line-height:1.1;display:inline-block}.tag--ink{background:var(--ink);color:var(--paper);font-family:var(--display-alt)}.ransom{white-space:nowrap;align-items:center;gap:.03em;display:inline-flex}.ransom .l{font-family:var(--display);background:var(--ink);color:var(--paper);rotate:var(--r);translate:0 var(--y);scale:var(--s);padding:.05em .1em .03em;line-height:1;display:inline-block}.ransom .inv{background:var(--paper);color:var(--ink)}.ransom .alt{font-family:var(--display-alt)}.ransom .sp{width:.3em}.stack{flex-wrap:wrap;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.stack li{background:var(--ink);color:var(--paper);box-shadow:inset 0 0 0 1px var(--paper);font:400 .8rem var(--display-alt);text-transform:uppercase;align-items:center;gap:.45em;padding:.25rem .6rem;display:flex}.stack li.paper{background:var(--paper);color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.stack svg{width:1.2em;height:1.2em}.shot{outline:.4rem solid var(--paper);margin:0}.shot img{object-fit:cover;width:100%;height:100%;display:block}.field:not([hidden])~main img[data-drawn]{opacity:0}.hud{z-index:10;font-family:var(--display-alt);text-transform:uppercase;align-items:center;gap:.6rem;font-size:.75rem;display:flex;position:fixed;bottom:1rem;right:1rem}.hud>*{background:var(--ink);color:var(--paper);outline:2px solid var(--paper);margin:0;padding:.45rem .7rem;rotate:-2deg}.hud kbd{font:inherit;background:var(--paper);color:var(--ink);margin:0 .2em 0 .6em;padding:0 .35em}.hud__keys{gap:.6em;display:flex}.hud__keys span>kbd:first-child{margin-left:0}[data-screen=menu] .hud__keys{position:fixed;bottom:1rem;left:1rem}.hud :is(a,button):focus-visible{outline:3px solid var(--cyan)}.hud :is(a,button):active{translate:0 1px}@media (hover:none){.hud__keys{display:none}}.intro{z-index:21;perspective:1100px;place-items:center;display:none;position:fixed;inset:0;overflow:clip}.first-visit .intro{display:grid}.intro__card{visibility:hidden;aspect-ratio:144/100;width:min(80vw,36rem);transform-style:preserve-3d;font-size:clamp(1.7rem,7.4vw,3.3rem);position:relative}.intro__face{border:.14em solid var(--paper);backface-visibility:hidden;place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.intro__face--back{transform:rotateY(180deg)}.intro__face svg{width:100%;height:100%;position:absolute;inset:0}.intro__face img{height:78%;filter:drop-shadow(.05em 0 0 var(--paper)) drop-shadow(-.05em 0 0 var(--paper)) drop-shadow(0 .05em 0 var(--paper)) drop-shadow(0 -.05em 0 var(--paper));position:absolute}.intro__face p{position:relative}[data-cut] main{pointer-events:none}.cut{z-index:20;pointer-events:none;position:fixed;inset:0;overflow:clip}.cut i{will-change:transform;position:absolute;inset:-50%;transform:translate(-115%)rotate(-14deg)}.cut i:first-child{background:var(--ink)}.cut i:nth-child(2){background:var(--paper)}.cut i:nth-child(3){background:var(--red)}.covered .cut i{animation:0s 4s forwards uncover;transform:rotate(-14deg)}@keyframes uncover{to{transform:translate(115%)rotate(-14deg)}}svg[data-astro-cid-gttqbbyq]{display:block}.backdrop[data-astro-cid-nlnhp4nu],.field[data-astro-cid-nlnhp4nu]{z-index:-1;width:100%;height:100%;position:fixed;inset:0}.backdrop[data-astro-cid-nlnhp4nu][hidden],.field[data-astro-cid-nlnhp4nu][hidden]{display:none}.backdrop[data-astro-cid-nlnhp4nu]{background:var(--ink);overflow:clip}.backdrop__red[data-astro-cid-nlnhp4nu]{background:radial-gradient(120% 100% at 15% 20%, var(--red) 0%, var(--red-deep) 100%);position:absolute;inset:0}.backdrop__red[data-astro-cid-nlnhp4nu]:before{--dot:radial-gradient(circle, rgb(from var(--ink) r g b / .5) 42%, transparent 46%);content:"";background:var(--dot) 0 0 / 20px 20px, var(--dot) 10px 10px / 20px 20px;position:absolute;inset:0;mask-image:radial-gradient(120% 100% at 15% 20%,#0000 30%,#000 100%)}.backdrop__stars[data-astro-cid-nlnhp4nu]{clip-path:polygon(67.5% 0,100% 0,100% 100%,48.5% 100%);position:absolute;inset:0}html[data-screen=projects] .backdrop__red[data-astro-cid-nlnhp4nu]{clip-path:polygon(64% 0,100% 0,100% 100%,40% 100%)}html[data-screen=projects] .backdrop__stars[data-astro-cid-nlnhp4nu]{clip-path:polygon(0 69.2%,38% 100%,0 100%)}html[data-screen=project] .backdrop__red[data-astro-cid-nlnhp4nu]{clip-path:polygon(0 0,5% 0,16% 100%,0 100%)}html[data-screen=project] .backdrop__stars[data-astro-cid-nlnhp4nu]{clip-path:polygon(100% 80%,100% 100%,85% 100%)}html[data-screen=about] .backdrop__red[data-astro-cid-nlnhp4nu]{clip-path:polygon(30% 0,100% 0,100% 100%,42% 100%)}html[data-screen=about] .backdrop__stars[data-astro-cid-nlnhp4nu]{clip-path:polygon(78% 0,100% 0,100% 30%)}html[data-screen=experience] .backdrop__red[data-astro-cid-nlnhp4nu]{clip-path:polygon(0 0,52% 0,40% 100%,0 100%)}html[data-screen=experience] .backdrop__stars[data-astro-cid-nlnhp4nu],html[data-screen=contact] .backdrop__red[data-astro-cid-nlnhp4nu]{display:none}html[data-screen=contact] .backdrop__stars[data-astro-cid-nlnhp4nu]{clip-path:polygon(72% 0,100% 0,100% 38%)}.backdrop[data-astro-cid-nlnhp4nu]:after{content:"";opacity:.18;mix-blend-mode:overlay;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)'/%3E%3C/svg%3E");position:absolute;inset:0}
