@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(../media/jetbrains-mono-cyrillic-ext-wght-normal.1ladf10s224e1.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:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(../media/jetbrains-mono-cyrillic-wght-normal.0x7cg5h5x34js.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(../media/jetbrains-mono-greek-wght-normal.1k07jbkicvzf3.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:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(../media/jetbrains-mono-vietnamese-wght-normal.0a13tgqsi9z78.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:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(../media/jetbrains-mono-latin-ext-wght-normal.3rxtet6g9i1k3.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:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(../media/jetbrains-mono-latin-wght-normal.2rmhnsrc80fag.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{--black:#000;--warm-black:#0b0c0a;--line:#292a27;--white:#f7f7f8;--muted:#a5a5ac;--acid:#c6ff4a;--tech-blue:#2f87ff;--font-mono:"JetBrains Mono Variable", "JetBrains Mono", monospace;--header-height:76px}*{box-sizing:border-box;margin:0;padding:0}html{background:var(--black);color:var(--white)}body{background:var(--black);min-height:100svh;color:var(--white);font-family:var(--font-mono);text-rendering:geometricprecision;-webkit-font-smoothing:antialiased;font-size:15px;line-height:1.55;overflow:hidden}::selection{background:var(--white);color:var(--black)}a{color:inherit;text-decoration:none}svg{display:block}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.site-header{z-index:20;height:var(--header-height);border-bottom:1px solid var(--line);background:#000000e6;grid-template-columns:1fr auto 1fr;align-items:center;padding-inline:clamp(20px,3.4vw,54px);display:grid;position:fixed;top:0;left:0;right:0}.wordmark{letter-spacing:-.04em;text-transform:uppercase;flex-direction:column;width:max-content;font-size:.72rem;font-weight:800;line-height:1.05;display:flex}.wordmark span:last-child{color:var(--acid)}.site-header__prompt,.site-header__location{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.62rem;font-weight:700}.site-header__prompt{justify-self:center}.site-header__location{justify-self:end}.portfolio-gateway{min-height:100svh;padding-top:var(--header-height);background:var(--black);display:flex;position:relative;overflow:hidden}.portfolio-panel{--accent:var(--white);background:var(--black);isolation:isolate;flex:50%;align-items:flex-end;min-width:0;padding:clamp(26px,4vw,64px);transition:flex-grow .36s linear,background .18s linear,color .18s linear;display:flex;position:relative;overflow:hidden}.portfolio-panel:first-of-type{border-right:1px solid var(--line)}.portfolio-panel--design{--accent:var(--acid)}.portfolio-panel--engineering{--accent:var(--tech-blue)}.portfolio-panel:before,.portfolio-panel:after{z-index:-1;content:"";pointer-events:none;position:absolute}.portfolio-panel:before{background:var(--line);width:1px;top:0;bottom:0;left:50%}.portfolio-panel:after{transform-origin:0;background:var(--accent);height:6px;transition:transform .36s linear;bottom:0;left:0;right:0;transform:scaleX(.16)}.portfolio-panel:hover,.portfolio-panel:focus-visible{background:var(--accent);color:var(--black);outline:0;flex-grow:1.16}.portfolio-panel:hover:before,.portfolio-panel:focus-visible:before{background:#0003}.portfolio-panel:hover:after,.portfolio-panel:focus-visible:after{background:var(--black);transform:scaleX(1)}.portfolio-panel__meta{z-index:2;color:var(--accent);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;gap:24px;font-size:.62rem;font-weight:700;transition:color .18s linear;display:flex;position:absolute;top:clamp(24px,4vw,52px);left:clamp(26px,4vw,64px);right:clamp(26px,4vw,64px)}.portfolio-panel:hover .portfolio-panel__meta,.portfolio-panel:focus-visible .portfolio-panel__meta{color:var(--black)}.portfolio-panel__target{z-index:-1;aspect-ratio:1;border:1px solid var(--line);border-radius:50%;width:min(33vw,500px);transition:width .36s linear,border-color .18s linear;position:absolute;top:49%;left:50%;transform:translate(-50%,-50%)}.portfolio-panel__target:before,.portfolio-panel__target:after{background:var(--line);content:"";position:absolute}.portfolio-panel__target:before{height:1px;top:50%;left:-11%;right:-11%}.portfolio-panel__target:after{width:1px;top:-11%;bottom:-11%;left:50%}.portfolio-panel:hover .portfolio-panel__target,.portfolio-panel:focus-visible .portfolio-panel__target{border-color:#00000047;width:min(39vw,590px)}.portfolio-panel:hover .portfolio-panel__target:before,.portfolio-panel:hover .portfolio-panel__target:after,.portfolio-panel:focus-visible .portfolio-panel__target:before,.portfolio-panel:focus-visible .portfolio-panel__target:after{background:#0003}.portfolio-panel__content{z-index:3;width:100%;position:relative}.portfolio-panel__content>p:first-child{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;margin-bottom:clamp(12px,2vh,24px);font-size:.68rem;font-weight:700;transition:color .18s linear}.portfolio-panel h2{color:var(--white);letter-spacing:-.085em;text-transform:uppercase;font-size:clamp(3.15rem,5vw,6rem);font-weight:260;line-height:.84;transition:color .18s linear}.portfolio-panel h2 span{display:block}.portfolio-panel__description{max-width:510px;color:var(--muted);margin-top:clamp(20px,3vh,34px);font-size:clamp(.72rem,.9vw,.88rem);transition:color .18s linear}.portfolio-panel__link{color:var(--white);text-transform:uppercase;border-bottom:1px solid;align-items:center;gap:12px;margin-top:clamp(20px,3vh,34px);padding-bottom:6px;font-size:.66rem;font-weight:800;display:inline-flex}.portfolio-panel__link svg{fill:none;stroke:currentColor;stroke-linecap:square;stroke-linejoin:miter;stroke-width:1.7px;width:17px;height:17px;transition:transform .18s linear}.portfolio-panel:hover .portfolio-panel__content>p:first-child,.portfolio-panel:hover h2,.portfolio-panel:hover .portfolio-panel__description,.portfolio-panel:hover .portfolio-panel__link,.portfolio-panel:focus-visible .portfolio-panel__content>p:first-child,.portfolio-panel:focus-visible h2,.portfolio-panel:focus-visible .portfolio-panel__description,.portfolio-panel:focus-visible .portfolio-panel__link{color:var(--black)}.portfolio-panel:hover .portfolio-panel__link svg,.portfolio-panel:focus-visible .portfolio-panel__link svg{transform:translate(3px,-3px)}.portfolio-panel__hint{z-index:3;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;writing-mode:vertical-rl;font-size:.58rem;font-weight:700;transition:color .18s linear;position:absolute;bottom:clamp(26px,4vw,64px);right:clamp(26px,4vw,64px)}.portfolio-panel:hover .portfolio-panel__hint,.portfolio-panel:focus-visible .portfolio-panel__hint{color:var(--black)}.center-mark{z-index:10;width:50px;height:50px;transform:translate(-50%, calc(-50% + var(--header-height) / 2));border:1px solid var(--line);background:var(--black);color:var(--white);letter-spacing:-.06em;pointer-events:none;place-items:center;font-size:.66rem;font-weight:800;display:grid;position:absolute;top:50%;left:50%}@media (max-width:900px){body{overflow-y:auto}.site-header{grid-template-columns:1fr 1fr}.site-header__prompt{display:none}.portfolio-gateway{flex-direction:column;min-height:100svh}.portfolio-panel{min-height:max(450px, calc((100svh - var(--header-height)) / 2));flex:1 0 auto;padding:28px}.portfolio-panel:first-of-type{border-right:0;border-bottom:1px solid var(--line)}.portfolio-panel:hover,.portfolio-panel:focus-visible{flex-grow:1}.portfolio-panel__meta{top:28px;left:28px;right:28px}.portfolio-panel__target{width:min(55vw,360px);top:47%;left:75%}.portfolio-panel:hover .portfolio-panel__target,.portfolio-panel:focus-visible .portfolio-panel__target{width:min(62vw,410px)}.portfolio-panel h2{font-size:clamp(3.5rem,11vw,6.2rem)}.portfolio-panel__description{max-width:min(70%,520px)}.portfolio-panel__hint{bottom:28px;right:28px}.center-mark{top:calc(50% + var(--header-height) / 2);transform:translate(-50%,-50%)}}@media (max-width:560px){:root{--header-height:68px}.site-header{padding-inline:18px}.site-header__location{text-align:right;max-width:100px}.portfolio-panel{min-height:max(390px, calc((100svh - var(--header-height)) / 2));padding:22px 20px}.portfolio-panel__meta{top:20px;left:20px;right:20px}.portfolio-panel__meta span:last-child{text-align:right;max-width:160px}.portfolio-panel__target{width:68vw;left:76%}.portfolio-panel:hover .portfolio-panel__target,.portfolio-panel:focus-visible .portfolio-panel__target{width:74vw}.portfolio-panel__content>p:first-child{margin-bottom:10px}.portfolio-panel h2{font-size:clamp(2.9rem,12vw,4.2rem)}.portfolio-panel__description{display:none}.portfolio-panel__link{margin-top:20px}.portfolio-panel__hint{display:none}.center-mark{width:42px;height:42px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
