@font-face{font-family:Roboto Flex Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/_astro/roboto-flex-cyrillic-ext-wght-normal.CVcCQn0y.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:Roboto Flex Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/_astro/roboto-flex-cyrillic-wght-normal.BJ-nQEdz.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Roboto Flex Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/_astro/roboto-flex-greek-wght-normal.DeN4rzfy.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:Roboto Flex Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/_astro/roboto-flex-vietnamese-wght-normal.AVFfiTln.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:Roboto Flex Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/_astro/roboto-flex-latin-ext-wght-normal.gysdOMcS.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:Roboto Flex Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/_astro/roboto-flex-latin-wght-normal.n-dP9qr2.woff2) format("woff2-variations");unicode-range:U+0000-00FF,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}@font-face{font-family:Material Symbols Rounded Variable;font-style:normal;font-weight:100 700;font-display:block;src:url(/_astro/material-symbols-rounded-latin-wght-normal.B8SHTZiZ.woff2) format("woff2-variations")}@font-face{font-family:Roboto Flex Fallback;src:local("Arial");size-adjust:100%;ascent-override:92%;descent-override:24%;line-gap-override:0%}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #08080f;--fg: #ff006e;--fg-rgb: 255, 0, 110;--fvs-wght: 800;--fvs-wdth: 100;--fvs-opsz: 72;--fvs-grad: 0;--fvs-slnt: 0;--text-strong: rgba(var(--fg-rgb), 1);--text-body-alpha: .96;--text-muted-alpha: .92;--text-meta-alpha: .86;--text-body: rgba(var(--fg-rgb), var(--text-body-alpha));--text-muted: rgba(var(--fg-rgb), var(--text-muted-alpha));--text-meta: rgba(var(--fg-rgb), var(--text-meta-alpha));--type-body: var(--dbg-type-body-size, clamp(.875rem, .84rem + .2vw, .9375rem));--type-label: var(--dbg-type-label-size, clamp(.625rem, .6rem + .14vw, .6875rem));--type-body-lh: 1.62;--type-body-ls: .01em;--type-quote-size: clamp(.84rem, .81rem + .16vw, .9rem);--type-quote-lh: 1.56;--type-quote-ls: .005em;--type-quote-wght: 390;--type-quote-grad: 40;--body-opsz: 14;--body-wght: 430;--body-grad: 60}html,body{height:100%;width:100%}body{background-color:var(--bg);color:var(--text-strong);font-family:Roboto Flex Variable,Roboto Flex Fallback,sans-serif;font-optical-sizing:auto;font-variation-settings:"opsz" var(--body-opsz),"wght" var(--body-wght),"GRAD" var(--body-grad);font-synthesis:none;text-rendering:optimizeLegibility;overflow:hidden;overscroll-behavior:none;transition:background-color 80ms ease-out,color 80ms ease-out}@media(prefers-reduced-motion:reduce){body{transition:none}}.material-symbols-rounded{font-family:Material Symbols Rounded Variable,sans-serif;font-style:normal;font-weight:400;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;direction:ltr;font-feature-settings:"liga";-webkit-font-smoothing:antialiased}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}dialog.overlay:not([open]){display:none}dialog.overlay{position:fixed;inset:0;width:100%;max-width:100%;height:100%;max-height:100%;margin:0;padding:0;border:none;background:var(--bg);color:var(--fg);z-index:100;opacity:0;transition:opacity .3s ease;overflow:hidden;display:flex;flex-direction:column}dialog.overlay.is-visible{opacity:1}dialog.overlay::backdrop{display:none}@media(prefers-reduced-motion:reduce){dialog.overlay{transition:none}}.overlay-close{background:transparent;border:1px solid rgba(var(--fg-rgb),.2);border-radius:20px;color:var(--text-muted);font-family:monospace;font-size:14px;padding:4px 12px;cursor:pointer;transition:color .15s,border-color .15s;line-height:1.4}.overlay-close:hover{color:var(--text-strong);border-color:rgba(var(--fg-rgb),.45)}@media(prefers-reduced-motion:reduce){.overlay-close{transition:none}}.bottom-nav{position:fixed;bottom:2rem;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:2px;padding:5px;border-radius:28px;border:1px solid rgba(var(--fg-rgb),.15);background:rgba(var(--fg-rgb),.07);backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);z-index:50;transition:border-color 80ms ease-out,background 80ms ease-out}.bottom-nav__item{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px 18px;border-radius:18px;border:1px solid transparent;background:transparent;font-family:monospace;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);cursor:pointer;transition:color .15s,background .15s,border-color .15s}.bottom-nav__item[aria-pressed=true]{background:rgba(var(--fg-rgb),.15);border-color:rgba(var(--fg-rgb),.25);color:rgba(var(--fg-rgb),1)}.bottom-nav__item:hover:not([aria-pressed=true]){color:var(--text-strong)}@media(prefers-reduced-motion:reduce){.bottom-nav,.bottom-nav__item{transition:none}}.nav-color-strip{position:fixed;bottom:calc(2rem + 22px);left:50%;transform:translate(-50%);width:200px;height:10px;border-radius:10px;background:var(--fg);opacity:.3;z-index:49;pointer-events:none;transition:background .3s ease}@media(prefers-reduced-motion:reduce){.nav-color-strip{transition:none}}.overlay-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 2rem;flex-shrink:0}.overlay-header__label{font-family:monospace;font-size:var(--type-label);letter-spacing:.14em;text-transform:uppercase;color:var(--text-meta)}.work-body{overflow-y:auto;flex:1;min-height:0;padding:3rem 2rem 6rem;max-width:640px;margin:0 auto;width:100%}.work-eye{font-family:monospace;font-size:var(--type-label);letter-spacing:.14em;text-transform:uppercase;color:var(--text-meta);margin-bottom:1rem}.work-headline{font-size:clamp(1.75rem,5vw,3rem);font-weight:400;line-height:1.12;letter-spacing:-.01em;color:var(--text-strong);margin-bottom:2.5rem;font-family:Palatino Linotype,Book Antiqua,Georgia,serif}.work-section-label{font-family:monospace;font-size:var(--type-label);letter-spacing:.14em;text-transform:uppercase;color:var(--text-meta);margin-bottom:12px}.work-section-label--spaced{margin-top:2.25rem}.project-card{border:1px solid rgba(var(--fg-rgb),.25);border-radius:12px;background:rgba(var(--fg-rgb),.04);margin-bottom:16px;overflow:hidden;cursor:pointer;transition:border-color .2s,background .2s}.project-card:hover{border-color:rgba(var(--fg-rgb),.3);background:rgba(var(--fg-rgb),.07)}.project-card__inner{padding:1.75rem 1.75rem 1.25rem}.project-card__header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem}.project-card__tags{display:flex;gap:8px;flex-wrap:wrap}.project-card__tag{font-family:monospace;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-meta);border:1px solid currentColor;padding:4px 12px;border-radius:999px;display:inline-block}.project-card__badge{font-family:monospace;font-size:var(--type-label);letter-spacing:.12em;text-transform:uppercase;padding:4px 12px;border-radius:20px;white-space:nowrap}.project-card__badge--idea{color:var(--text-muted);border:1px solid rgba(var(--fg-rgb),.35)}.project-card__badge--prototype{color:var(--text-body);border:1px solid rgba(var(--fg-rgb),.45)}.project-card__badge--mvp{color:var(--text-strong);border:1px solid rgba(var(--fg-rgb),.55);background:rgba(var(--fg-rgb),.08)}.project-card__badge--product{color:var(--text-strong);border:1px solid rgba(var(--fg-rgb),.7);background:rgba(var(--fg-rgb),.12)}.project-card__title{font-size:20px;font-weight:400;line-height:1.22;letter-spacing:-.01em;color:var(--text-strong);font-family:Palatino Linotype,Book Antiqua,Georgia,serif;margin-bottom:10px}.project-card__problem{font-size:var(--type-body);line-height:var(--type-body-lh);letter-spacing:var(--type-body-ls);color:var(--text-muted);max-width:64ch;margin-bottom:20px}.project-card__decision{font-size:var(--type-quote-size);line-height:var(--type-quote-lh);letter-spacing:var(--type-quote-ls);color:var(--text-meta);padding:14px 16px;border-left:2px solid rgba(var(--fg-rgb),.45);font-style:italic;font-variation-settings:"wght" var(--type-quote-wght),"GRAD" var(--type-quote-grad);max-width:64ch;margin-top:6px;margin-bottom:20px}.project-card__outcome{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:1rem;border:1px solid rgba(var(--fg-rgb),.1);border-radius:8px;background:rgba(var(--fg-rgb),.03);padding:12px}.project-card__outcome-item{border:1px solid rgba(var(--fg-rgb),.1);border-radius:8px;padding:10px 12px}.project-card__outcome-label{font-family:monospace;font-size:var(--type-label);letter-spacing:.12em;text-transform:uppercase;color:var(--text-meta);margin-bottom:4px}.project-card__outcome-val{font-size:var(--type-body);letter-spacing:var(--type-body-ls);color:var(--text-body);line-height:var(--type-body-lh)}.project-card__problem,.project-card__decision,.project-card__outcome{display:none}.project-card[data-depth=decision] .project-card__problem,.project-card[data-depth=decision] .project-card__decision,.project-card[data-depth=full] .project-card__problem,.project-card[data-depth=full] .project-card__decision{display:block}.project-card[data-depth=full] .project-card__outcome{display:grid}.project-card__footer{display:flex;flex-direction:column;gap:10px;padding:14px 28px 20px;border-top:1px solid rgba(var(--fg-rgb),.08);margin-top:8px}.project-card__links{display:flex;gap:6px;flex-wrap:wrap}.project-card__link{font-family:monospace;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-meta);border:1px solid rgba(var(--fg-rgb),.15);padding:4px 12px;border-radius:999px;text-decoration:none;transition:color .15s,border-color .15s}.project-card__link:hover{color:var(--text-strong);border-color:rgba(var(--fg-rgb),.35)}.project-card__footer-row{display:flex;align-items:center;justify-content:space-between}.project-card__year{font-family:monospace;font-size:var(--type-label);letter-spacing:.12em;color:var(--text-meta)}.project-card__demo{font-family:monospace;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-body);border:1px solid currentColor;padding:6px 16px;border-radius:999px;background:rgba(var(--fg-rgb),.06);text-decoration:none;transition:color .15s}.project-card__demo:hover{color:var(--text-strong)}.project-card--ghost{border-color:rgba(var(--fg-rgb),.07);background:transparent;cursor:default}.project-card--ghost:hover{border-color:rgba(var(--fg-rgb),.07);background:transparent}.project-card--ghost p{font-size:13px;color:var(--text-muted);line-height:1.7;font-style:italic}.depth-selector{margin-top:2.5rem;padding-top:2rem;border-top:1px solid rgba(var(--fg-rgb),.1)}.depth-selector__label{font-family:monospace;font-size:var(--type-label);letter-spacing:.18em;text-transform:uppercase;color:var(--text-meta);margin-bottom:1rem}.depth-selector__row{display:flex;gap:8px;flex-wrap:wrap}.depth-chip{font-family:monospace;font-size:10px;letter-spacing:.12em;text-transform:uppercase;padding:7px 16px;border-radius:999px;border:1px solid currentColor;color:var(--text-meta);background:transparent;cursor:pointer;transition:color .15s,background .15s}.depth-chip:hover{color:var(--text-strong)}.depth-chip[aria-pressed=true]{color:var(--fg);background:rgba(var(--fg-rgb),.12)}@media(prefers-reduced-motion:reduce){.depth-chip{transition:none}}.approach-scroll{flex:1;min-height:0;overflow-y:scroll;scroll-snap-type:y mandatory;overscroll-behavior:contain}.approach-slide{height:100svh;scroll-snap-align:start;display:grid;place-items:center;padding:4rem 2rem}.approach-slide__inner{max-width:600px;width:100%}.approach-slide__eye{font-family:monospace;font-size:var(--type-label);letter-spacing:.14em;text-transform:uppercase;color:var(--text-meta);margin-bottom:1.25rem}.approach-slide__head{font-size:clamp(1.75rem,5vw,3rem);font-weight:400;line-height:1.12;letter-spacing:-.01em;color:var(--text-strong);margin-bottom:1.5rem;font-family:Palatino Linotype,Book Antiqua,Georgia,serif}.approach-slide__body{font-size:var(--type-body);line-height:var(--type-body-lh);letter-spacing:var(--type-body-ls);color:var(--text-body);max-width:64ch}.approach-slide__body+.approach-slide__body{margin-top:1rem}.approach-row-list{display:flex;flex-direction:column;margin-top:1.5rem}.approach-row{display:flex;gap:1.5rem;padding:1rem 0;border-bottom:1px solid rgba(var(--fg-rgb),.1);align-items:baseline}.approach-row:last-child{border-bottom:none}.approach-row__key{font-family:monospace;font-size:var(--type-label);letter-spacing:.12em;text-transform:uppercase;color:var(--text-meta);min-width:120px;flex-shrink:0}.approach-row__val{font-size:var(--type-body);letter-spacing:var(--type-body-ls);color:var(--text-body);line-height:var(--type-body-lh);max-width:64ch}.contact-body{flex:1;display:grid;place-items:center;padding:2rem}.contact-inner{max-width:480px;width:100%}.contact-headline{font-size:clamp(2rem,6vw,3.5rem);font-weight:400;line-height:1.12;letter-spacing:-.01em;color:var(--text-strong);margin-bottom:2.5rem;font-family:Palatino Linotype,Book Antiqua,Georgia,serif}.contact-email{display:block;font-size:1.1rem;color:var(--text-strong);text-decoration:none;margin-bottom:.5rem;transition:opacity .15s}.contact-email:hover{opacity:.7}@media(prefers-reduced-motion:reduce){.contact-email{transition:none}}.contact-location{font-family:monospace;font-size:clamp(.625rem,.59rem + .16vw,.75rem);letter-spacing:.14em;text-transform:uppercase;color:var(--text-meta)}.wordmark[data-astro-cid-hhuuaa7r]{display:flex;flex-direction:column;align-items:center;gap:.08em;line-height:1;user-select:none;pointer-events:none}.wordmark__primary[data-astro-cid-hhuuaa7r]{font-size:clamp(4rem,18vw,14rem);font-variation-settings:"wght" var(--fvs-wght),"wdth" var(--fvs-wdth),"opsz" var(--fvs-opsz),"GRAD" var(--fvs-grad),"slnt" var(--fvs-slnt);letter-spacing:-.03em;color:var(--fg)}.wordmark__suffix[data-astro-cid-hhuuaa7r]{font-size:clamp(.9rem,2.8vw,2.4rem);font-variation-settings:"wght" var(--fvs-wght),"wdth" var(--fvs-wdth),"opsz" var(--fvs-opsz),"GRAD" var(--fvs-grad),"slnt" var(--fvs-slnt);letter-spacing:.38em;text-transform:uppercase;color:var(--fg);opacity:.55}main[data-astro-cid-j7pv25f6]{height:100svh;overflow-y:scroll;scroll-snap-type:y mandatory;touch-action:pan-y}section[data-astro-cid-j7pv25f6]{height:100svh;scroll-snap-align:start;display:grid;place-items:center;outline:none}.nav-hint[data-astro-cid-j7pv25f6]{position:fixed;bottom:6rem;left:50%;transform:translate(-50%);color:var(--fg);opacity:.4;padding:1rem 1.5rem;transition:opacity .4s ease-out;pointer-events:none}.nav-hint[data-astro-cid-j7pv25f6] .material-symbols-rounded[data-astro-cid-j7pv25f6]{font-size:1.5rem;font-variation-settings:"wght" 200,"FILL" 0}.nav-hint[data-astro-cid-j7pv25f6].hidden{opacity:0}@media(prefers-reduced-motion:reduce){.nav-hint[data-astro-cid-j7pv25f6]{transition:none}}
