@font-face{font-family:Tiny5;src:url(/fonts/tiny5.ttf)format("truetype");font-style:normal;font-weight:400;font-display:swap}.portfolio-site{--pf-bg:#111;--pf-fg:#f4f3ef;--pf-muted:#a6a6a0;--pf-accent:#aaa2ff;--pf-solid:#7162f1;--pf-line:#343434;--pf-panel:#202020;--pf-gutter:clamp(24px, 4.2vw, 84px);background:var(--pf-bg);color:var(--pf-fg);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;scrollbar-color:var(--pf-accent) var(--pf-bg);font-family:Manrope Variable,sans-serif;position:relative;overflow:clip}.portfolio-site ::selection{color:var(--pf-bg);background:var(--pf-accent)}.portfolio-site :is(a,button):focus-visible{outline:2px solid var(--pf-accent);outline-offset:6px}.portfolio-site a{text-underline-offset:5px}.portfolio-site :is(h1,h2,h3,h4){text-wrap:balance}.portfolio-site :is(p,li){text-wrap:pretty}.pf-accent{color:var(--pf-accent)}.pf-scroll-scene{height:190svh;position:relative}.pf-scene-sticky{height:100svh;min-height:760px;position:sticky;top:0}.pf-header{height:88px;margin-inline:var(--pf-gutter);z-index:10;border-bottom:1px solid var(--pf-line);justify-content:space-between;align-items:center;gap:30px;display:flex;position:relative}.pf-wordmark{letter-spacing:-.04em;font-size:36px;font-weight:800;line-height:1;display:inline-block}.pf-nav{gap:32px;font-size:13px;display:flex}.pf-nav a{color:var(--pf-muted);padding-block:15px;transition:color .16s}.pf-nav a:hover{color:var(--pf-accent)}.pf-header-end{align-items:center;gap:32px;display:flex}.pf-header-discipline{letter-spacing:.11em;color:var(--pf-muted);font-size:9px}.pf-language{align-items:center;gap:8px;padding:10px 0 10px 15px;font-size:12px;display:flex}.pf-language span{color:var(--pf-accent)}.pf-button{background:var(--pf-fg);min-height:50px;color:var(--pf-bg);border-radius:50px;justify-content:center;align-items:center;gap:26px;padding:8px 8px 8px 24px;font-size:13px;font-weight:650;transition:background .18s,color .18s;display:inline-flex}.pf-button>span:not(.pf-play-icon){background:var(--pf-solid);color:#fff;border-radius:50%;place-items:center;width:35px;height:35px;display:grid}.pf-button svg{width:19px;height:19px}.pf-button:hover{background:var(--pf-accent)}.pf-hero-description{color:var(--pf-muted);max-width:320px;font-size:13px;line-height:1.8}.pf-scene-foot{bottom:24px;left:var(--pf-gutter);right:var(--pf-gutter);border-top:1px solid var(--pf-line);color:var(--pf-muted);letter-spacing:.06em;justify-content:space-between;align-items:center;gap:16px;padding-top:20px;font-size:10px;display:flex;position:absolute}.pf-scene-foot>span:last-child{align-items:center;gap:18px;display:flex}.pf-scene-foot svg{width:16px;height:16px}.pf-video-shell{width:100%;height:100%;position:relative}.pf-video{object-fit:contain;width:100%;height:100%;display:block}.pf-video-caption{color:#e6e6df;letter-spacing:.02em;align-items:center;gap:8px;font-size:10px;display:flex;position:absolute;bottom:55px;left:22px}.pf-video-signal{background:var(--pf-accent);border-radius:50%;width:5px;height:5px}.pf-video-progress{background:#ffffff1f;height:2px;position:absolute;bottom:0;left:0;right:0}.pf-video-progress>span{height:100%;width:var(--video-progress,0%);background:var(--pf-accent);display:block}.pf-scroll-note{color:#c1c1bc;align-items:center;gap:9px;font-size:10px;display:flex;position:absolute;bottom:18px;left:22px;right:16px}.pf-scroll-note svg{width:13px;height:13px}.pf-video-status,.pf-video-loading{color:#eee;background:#111;padding:10px;font-size:11px;line-height:1.6;position:absolute;top:16px;left:20px;right:20px}.pf-video-loading{background:#111c;width:fit-content}.portfolio-site{--pf-bg:#151914;--pf-fg:#f0f1df;--pf-muted:#a8b4a2;--pf-accent:#d0f475;--pf-solid:#d0f475;--pf-line:#3b4933;--pf-panel:#20271b}.portfolio-site .pf-header{height:80px}.portfolio-site .pf-wordmark{letter-spacing:0;align-items:center;font-family:Tiny5,monospace;font-size:35px;font-weight:700;display:flex}.pf-robot{width:38px;height:38px;color:var(--pf-accent)}.pf-pixel-hero{height:calc(100% - 80px);padding:43px var(--pf-gutter) 112px;grid-template-columns:1.07fr 1fr;align-items:center;gap:5%;display:grid;position:relative}.pf-pixel-copy{min-width:0}.pf-pixel-details{display:block}.pf-pixel-copy h1{letter-spacing:-.025em;font-family:Tiny5,monospace;font-size:clamp(48px,5.6vw,90px);font-weight:700;line-height:.97}.pf-pixel-copy h1>span,.pf-pixel-caret{color:var(--pf-accent)}.pf-pixel-identity{align-items:center;gap:16px;margin-top:30px;display:flex}.pf-pixel-identity .pf-robot{width:46px;height:46px}.pf-pixel-identity strong{font-size:18px;font-weight:600}.pf-pixel-identity p{color:var(--pf-muted);margin-top:4px;font-size:11px}.pf-pixel-copy .pf-hero-description{max-width:360px;margin-top:20px}.portfolio-site .pf-button{background:var(--pf-accent);color:#1b2412;letter-spacing:.015em;border-radius:0;gap:17px;min-height:52px;padding:17px 22px;font-size:11px}.pf-pixel-copy .pf-button{margin-top:27px}.portfolio-site .pf-button:hover{background:#e7ffa8}.pf-play-icon{clip-path:polygon(0 0,100% 50%,0 100%);background:currentColor;width:10px;height:12px}.pf-pixel-stack{color:var(--pf-muted);flex-wrap:wrap;gap:18px;margin-top:27px;font-family:Tiny5,monospace;font-size:14px;display:flex}.pf-pixel-console{border:2px solid var(--pf-accent);background:#0e100e;align-self:center;width:100%;height:min(66svh,660px);min-height:460px;position:relative}.pf-console-bar{background:var(--pf-accent);color:#1b2412;justify-content:space-between;align-items:center;height:36px;padding:0 14px;font-family:Tiny5,monospace;font-size:14px;display:flex}.pf-console-bar>span:first-child{align-items:center;gap:8px;display:flex}.pf-console-bar i{background:currentColor;width:9px;height:9px}.pf-pixel-console .pf-video-shell{height:calc(100% - 70px)}.pf-pixel-console .pf-video{object-fit:cover;object-position:center 33%}.pf-console-foot{border-top:1px solid var(--pf-line);height:34px;color:var(--pf-muted);justify-content:space-between;align-items:center;padding-inline:14px;font-family:Tiny5,monospace;font-size:12px;display:flex}.pf-pixel-sticker{background:var(--pf-accent);color:#1b2412;align-items:center;gap:10px;padding:15px 16px;display:flex;position:absolute;bottom:80px;right:-20px}.pf-pixel-sticker .pf-robot{color:currentColor;width:36px;height:36px}.pf-pixel-sticker>span{font-family:Tiny5,monospace;font-size:18px;line-height:.95}.pf-section{padding:clamp(90px, 10vw, 160px) var(--pf-gutter);scroll-margin-top:30px}.pf-about{border-top:1px solid var(--pf-line)}.pf-section h2{letter-spacing:-.035em;font-size:clamp(36px,4.6vw,68px);font-weight:550;line-height:1.13}.pf-section h2 span{color:var(--pf-muted)}.pf-section-heading>p{color:var(--pf-muted);max-width:450px;font-size:14px;line-height:1.9}.pf-services{grid-template-columns:1fr 1fr;gap:22px;margin-top:64px;display:grid}.pf-service{background:var(--pf-panel);border-radius:16px;padding:36px}.pf-service-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:34px;display:flex}.pf-service-heading h3{font-size:14px;font-weight:500}.pf-service-heading>span{color:var(--pf-accent);font-size:23px}.pf-service-heading>svg{color:var(--pf-accent);width:27px;height:27px}.pf-service-title{letter-spacing:-.025em;max-width:400px;margin-bottom:19px;font-size:28px;font-weight:550;line-height:1.25}.pf-service>p{color:var(--pf-muted);font-size:13px;line-height:1.9}.pf-tech-list{flex-wrap:wrap;gap:8px;margin:28px 0 0;padding:0;list-style:none;display:flex}.pf-tech-list li{color:var(--pf-muted);border:1px solid var(--pf-line);border-radius:20px;padding:6px 11px;font-size:10px;line-height:1.5}.pf-section-heading{justify-content:space-between;align-items:end;gap:50px;margin-bottom:68px;display:flex}.pf-section-heading>p{max-width:290px}.pf-project-list{gap:75px;display:grid}.pf-project{grid-template-columns:1.8fr 1fr;align-items:center;gap:5%;display:grid}.pf-project-image{aspect-ratio:1.48;background:var(--pf-panel);border-radius:16px;min-width:0;position:relative;overflow:hidden}.pf-project-image img{object-fit:cover;width:100%;height:100%;display:block}.pf-project-index{font-variant-numeric:tabular-nums;color:#fff;background:#111;border-radius:20px;padding:7px 10px;font-size:10px;position:absolute;top:18px;left:20px}.pf-project-title{justify-content:space-between;align-items:center;gap:20px;display:flex}.pf-project-info h3{letter-spacing:-.035em;font-size:clamp(34px,4vw,62px);font-weight:600;line-height:1.1}.pf-project-info h3>span{color:var(--pf-accent)}.pf-project-info>p{color:var(--pf-muted);font-size:12px;line-height:1.9}.pf-project-info .pf-project-category{color:var(--pf-fg);margin-top:15px;margin-bottom:23px;font-size:11px}.pf-demo-label{color:var(--pf-muted);font-size:10px}.pf-project-info .pf-tech-list{gap:6px;margin-top:23px}.pf-project-links{flex-wrap:wrap;gap:22px;margin-top:25px;display:flex}.pf-project-links a{color:var(--pf-accent);align-items:center;gap:8px;font-size:12px;display:inline-flex}.pf-project-links a:hover{text-decoration:underline}.pf-project-links svg{width:15px;height:15px}.pf-project-empty{color:var(--pf-muted);padding-block:35px;font-size:14px}.pf-project-empty button{margin-top:20px}.pf-contact{background:var(--pf-panel);padding-bottom:120px}.pf-contact-heading{justify-content:space-between;align-items:center;gap:30px;display:flex}.pf-contact-heading h2{font-size:clamp(42px,6.9vw,96px)}.pf-contact-heading>svg{width:70px;height:70px;color:var(--pf-accent)}.pf-contact>p{color:var(--pf-muted);margin-top:28px;font-size:13px}.pf-contact-list{margin-top:60px}.pf-contact-list>a{border-top:1px solid var(--pf-line);grid-template-columns:1fr 1.2fr 24px;align-items:center;gap:20px;padding-block:25px;transition:color .15s;display:grid}.pf-contact-list>a:hover{color:var(--pf-accent)}.pf-contact-list>a>span:first-child{font-size:20px;font-weight:500}.pf-contact-list>a>span:nth-child(2){color:var(--pf-muted);overflow-wrap:anywhere;font-size:12px}.pf-contact-list svg{width:22px;height:22px}.pf-footer-bottom{border-top:1px solid var(--pf-line);color:var(--pf-muted);justify-content:space-between;align-items:center;gap:18px;margin-top:45px;padding-top:35px;font-size:10px;display:flex}.pf-footer-bottom a{align-items:center;gap:14px;display:flex}.pf-footer-bottom svg{width:14px;height:14px}.portfolio-site .pf-section h2{letter-spacing:-.02em;font-family:Tiny5,monospace;font-size:clamp(42px,5.8vw,84px);font-weight:700}.portfolio-site .pf-section h2 span{color:var(--pf-accent)}.portfolio-site .pf-services{border-top:1px solid var(--pf-line);border-bottom:1px solid var(--pf-line);gap:0}.portfolio-site .pf-service:last-child{border-left:1px solid var(--pf-line);padding:35px 0 35px 35px}.portfolio-site .pf-service-heading h3{color:var(--pf-accent);font-family:Tiny5,monospace;font-size:24px}.portfolio-site .pf-service-title{font-size:23px}.portfolio-site .pf-tech-list li{background:var(--pf-panel);border-radius:0}.portfolio-site .pf-project-list{gap:0}.portfolio-site .pf-project{border-top:1px solid var(--pf-line);grid-template-columns:1fr 1.2fr;padding-block:35px}.portfolio-site .pf-project-image{aspect-ratio:1.65;border-radius:0;order:2}.portfolio-site .pf-project-info{padding-right:35px}.portfolio-site .pf-project-info h3{font-family:Tiny5,monospace;font-size:58px}.portfolio-site .pf-project-index{color:#1b2412;background:#d0f475;border-radius:0;font-family:Tiny5,monospace}.portfolio-site .pf-contact{background:var(--pf-accent);color:#1b2412;--pf-muted:#42532d;--pf-line:#9fbd58}.portfolio-site .pf-contact h2 span,.portfolio-site .pf-contact-heading>svg,.portfolio-site .pf-contact-list>a:hover{color:#42532d}.pf-sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (min-width:1800px){.pf-pixel-hero{max-width:1700px;margin-inline:auto}}@media (max-height:830px) and (min-width:901px){.pf-scene-sticky{min-height:680px}.pf-pixel-hero{padding-top:28px}.pf-pixel-copy h1{font-size:5.3vw}.pf-pixel-console{height:64svh;min-height:440px}.pf-pixel-identity{margin-top:18px}.pf-pixel-copy .pf-hero-description{margin-top:14px}.pf-pixel-copy .pf-button,.pf-pixel-stack{margin-top:18px}}@media (max-width:1050px){.pf-header-discipline{display:none}.pf-pixel-hero{grid-template-columns:1fr 1fr;gap:5%}.pf-pixel-copy h1{font-size:5.6vw}.pf-pixel-console{height:58svh;min-height:440px}.pf-pixel-stack{gap:12px;font-size:11px}.pf-service{padding:28px}.pf-service-title{font-size:25px}.pf-project{grid-template-columns:1.4fr 1fr}}.pf-language>svg{width:13px;height:13px;color:var(--pf-accent)}@media (max-width:700px){.portfolio-site{--pf-gutter:22px}.pf-scene-sticky{height:100svh;min-height:0}.pf-scroll-scene{height:180svh}.pf-header,.portfolio-site .pf-header{gap:15px;height:68px}.pf-wordmark{font-size:29px}.pf-nav{gap:17px;font-size:12px}.pf-nav a{padding-block:15px}.pf-language{gap:3px;padding-left:0;font-size:12px}.pf-header-end{gap:0}.pf-header .pf-robot{width:26px;height:26px}.portfolio-site .pf-wordmark{gap:7px;font-size:25px}.pf-scene-foot{gap:15px;padding-top:14px;font-size:8px;bottom:27px}.pf-scene-foot>span:last-child{text-align:right;gap:7px;max-width:165px}.pf-scene-foot svg{width:12px;height:12px}.pf-pixel-hero{height:calc(100% - 68px);padding:25px var(--pf-gutter) 88px;grid-template-rows:auto 1fr;grid-template-columns:1fr 1fr;align-items:start;gap:22px 16px;display:grid}.pf-pixel-copy{display:contents}.pf-pixel-copy h1{letter-spacing:-.02em;grid-column:1/-1;font-size:clamp(35px,8.6vw,55px);line-height:.95}.pf-pixel-copy h1 br:first-child{display:block}.pf-pixel-details{flex-direction:column;grid-area:2/1;gap:20px;min-width:0;display:flex}.pf-pixel-identity{align-self:start;gap:9px;margin-top:3px}.pf-pixel-identity .pf-robot{width:32px;height:32px}.pf-pixel-identity strong{font-size:14px}.pf-pixel-identity p{font-size:11px}.pf-pixel-copy .pf-hero-description{margin-top:0;font-size:12px;line-height:1.8}.pf-pixel-copy .pf-button{align-self:start;gap:7px;min-height:46px;margin-top:0;padding:12px 10px;font-size:11px}.pf-pixel-copy .pf-button>svg{width:13px;height:13px}.pf-pixel-copy .pf-play-icon{display:none}.pf-pixel-stack{gap:8px 12px;margin-top:0;font-size:12px}.pf-pixel-console{grid-area:2/2;align-self:stretch;min-width:0;height:100%;min-height:0;max-height:390px}.pf-console-bar{height:25px;padding-inline:7px;font-size:9px}.pf-console-bar i{width:5px;height:5px}.pf-console-bar>span:last-child{display:none}.pf-pixel-console .pf-video-shell{height:calc(100% - 49px);min-height:200px}.pf-pixel-console .pf-video{object-position:center}.pf-pixel-console .pf-video-caption{display:none}.pf-pixel-console .pf-scroll-note{background:#0e100edb;padding:6px 8px;font-size:11px;line-height:1.5;bottom:12px;left:8px;right:6px}.pf-console-foot{height:24px;padding-inline:7px;font-size:8px}.pf-console-foot>span:last-child{display:none}.pf-pixel-sticker{gap:5px;padding:8px;bottom:57px;right:-9px}.pf-pixel-sticker .pf-robot{width:23px;height:23px}.pf-pixel-sticker>span{font-size:11px}.pf-section{padding-block:78px}.pf-section h2{font-size:clamp(33px,8.7vw,52px)}.pf-section-heading>p{max-width:100%;font-size:12px;line-height:1.85}.pf-services{grid-template-columns:1fr;gap:15px;margin-top:35px}.pf-service{padding:27px}.pf-service-heading{margin-bottom:25px}.pf-service-title{font-size:24px}.pf-service>p{font-size:12px}.pf-tech-list{gap:6px;margin-top:23px}.pf-tech-list li{padding:6px 9px;font-size:9px}.pf-section-heading{margin-bottom:35px;display:block}.pf-section-heading>p{max-width:290px;margin-top:22px}.pf-project-list{gap:50px}.pf-project{display:block}.pf-project-image{aspect-ratio:1.4;border-radius:12px}.pf-project-index{padding:5px 8px;top:12px;left:12px}.pf-project-info{padding-top:22px}.pf-project-info h3{font-size:37px}.pf-project-info .pf-project-category{margin:10px 0 16px}.pf-project-info>p{font-size:11px}.pf-project-info .pf-tech-list{margin-top:18px}.pf-contact{padding-bottom:120px}.pf-contact-heading h2{font-size:clamp(32px,8.8vw,52px)}.pf-contact-heading>svg{width:30px;height:30px}.pf-contact>p{margin-top:22px;font-size:11px;line-height:1.8}.pf-contact-list{margin-top:33px}.pf-contact-list>a{grid-template-columns:1fr 20px;gap:8px;padding-block:20px}.pf-contact-list>a>span:first-child{font-size:18px}.pf-contact-list>a>span:nth-child(2){grid-row:2;font-size:10px}.pf-contact-list>a>svg{grid-area:1/2/span 2;width:19px;height:19px}.pf-footer-bottom{gap:8px;margin-top:25px;padding-top:25px;font-size:8px}.pf-footer-bottom>span:nth-child(2){display:none}.portfolio-site .pf-section h2{font-size:43px}.portfolio-site .pf-service,.portfolio-site .pf-service:last-child{border-left:0;padding:28px 0}.portfolio-site .pf-service:last-child{border-top:1px solid var(--pf-line)}.portfolio-site .pf-project{flex-direction:column;gap:20px;padding-block:25px;display:flex}.portfolio-site .pf-project-image{order:0;width:100%}.portfolio-site .pf-project-info{width:100%;padding:0 0 10px}.portfolio-site .pf-project-info h3{font-size:43px}}@media (max-width:700px) and (max-height:730px){.pf-pixel-hero{gap:12px;padding-top:20px}.pf-pixel-copy h1{font-size:7.7vw}.pf-pixel-details{gap:13px}.pf-pixel-copy .pf-hero-description{font-size:12px;line-height:1.7}.pf-pixel-console .pf-video-shell{min-height:160px}.pf-pixel-stack{display:none}}@media (prefers-reduced-motion:reduce){.portfolio-site *,.portfolio-site :before,.portfolio-site :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation:none!important}}@media (min-width:550px) and (max-width:700px){.pf-pixel-copy h1{font-size:42px}.pf-pixel-identity strong{font-size:17px}.pf-pixel-identity p{font-size:11px}.pf-pixel-copy .pf-hero-description{font-size:13px}.pf-pixel-copy .pf-button{padding:14px 16px;font-size:11px}.pf-pixel-console{max-height:390px}}html:has(.portfolio-site){scrollbar-color:#a8b4a2 #151914;background:#151914}.portfolio-site{min-height:100svh}.portfolio-site .pf-about{border-top:0;padding-top:clamp(65px,7vw,110px)}.portfolio-site .pf-services{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:0}.portfolio-site .pf-service{background:0 0;border-radius:0;padding:35px 32px}.portfolio-site .pf-service:first-child{padding-left:0}.portfolio-site .pf-service+.pf-service{border-left:1px solid var(--pf-line)}.portfolio-site .pf-service:last-child{padding:35px 0 35px 32px}.portfolio-site .pf-service-title{color:var(--pf-fg);margin-bottom:18px;font-size:clamp(22px,2.1vw,30px);font-weight:550;line-height:1.3}.portfolio-site .pf-service>p:not(.pf-service-title){font-size:13px;line-height:1.9}.portfolio-site .pf-tech-list li{font-size:11px}.pf-project-role{color:var(--pf-muted);margin-top:18px;font-size:12px;line-height:1.7}.pf-project-role span{color:var(--pf-fg);margin-bottom:4px;font-size:11px;display:block}.pf-project-empty button{border:1px solid var(--pf-accent);color:var(--pf-accent);background:0 0;padding:12px 18px;font-size:13px}.pf-project-empty button:disabled{opacity:.55}.pf-window-controls{align-items:center;gap:9px;display:flex}.pf-window-controls i{border:1px solid;width:8px;height:8px;display:block}.pf-window-controls i:first-child{background:currentColor;border:0;height:1px}.pf-pixel-sticker>div{font-family:Tiny5,monospace;font-size:18px;line-height:1}.pf-sticker-flow{align-items:center;gap:4px;display:flex}.pf-sticker-flow svg{width:15px;height:15px}.pf-pixel-console .pf-console-foot{font-size:13px}@media (max-width:900px){.portfolio-site .pf-services{grid-template-columns:1fr}.portfolio-site .pf-service,.portfolio-site .pf-service:last-child{border-left:0;padding:30px 0}.portfolio-site .pf-service+.pf-service{border-top:1px solid var(--pf-line);border-left:0}.pf-service-heading{margin-bottom:22px}}@media (max-width:700px){.portfolio-site .pf-pixel-copy .pf-button,.pf-pixel-identity p{font-size:12px}.pf-pixel-copy .pf-hero-description{font-size:13px;line-height:1.75}.pf-pixel-details{gap:18px}.pf-pixel-sticker>div{font-size:13px}.pf-sticker-flow svg{width:12px;height:12px}.pf-pixel-console .pf-console-foot{font-size:10px}.pf-console-bar{font-size:11px}.pf-contact>p,.pf-project-info>p{font-size:13px}.pf-contact-list>a>span:nth-child(2){font-size:12px}.pf-footer-bottom{font-size:10px}.pf-section{scroll-margin-top:24px}}@media (max-width:700px) and (max-height:730px){.pf-pixel-details{gap:12px}.pf-pixel-copy .pf-hero-description{font-size:12px}.portfolio-site .pf-pixel-copy .pf-button{font-size:11px}}@media (max-width:700px){.pf-pixel-sticker{bottom:-24px}}.portfolio-site .skip-link{background:var(--pf-accent);color:var(--pf-bg);border-radius:0}.portfolio-site .skip-link:focus-visible{outline-color:var(--pf-accent)}
