.ask-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1500;display:flex;align-items:center;justify-content:center;padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));background:var(--ask-backdrop);overflow-y:auto;overscroll-behavior:contain;cursor:default}.ask-panel{position:relative;display:flex;flex-direction:column;gap:var(--space-4);width:min(760px,100%);max-height:calc(100dvh - 32px);min-height:0;padding:64px var(--space-6) var(--space-6);border:2px solid;border-color:var(--retro-highlight) var(--retro-edge) var(--retro-edge) var(--retro-highlight);background:var(--retro-chrome);color:var(--retro-ink);font:400 var(--type-body)/1.5 var(--font-body)}.ask-panel:before{content:"Ask anything";position:absolute;inset:0 0 auto;display:flex;align-items:center;height:50px;padding:0 64px 0 var(--space-3);background:var(--retro-title);color:var(--retro-title-ink);font:700 18px/1 var(--font-pixel)}.ask-form,.ask-conversation{display:flex;flex-direction:column;gap:var(--space-4);min-height:0}.ask-prompt{font:400 clamp(2rem,6vw,3rem)/1.1 var(--font-pixel)}.ask-field{position:relative;min-height:64px;padding:var(--space-3);border:2px solid;border-color:var(--retro-edge) var(--retro-highlight) var(--retro-highlight) var(--retro-edge);background:var(--retro-terminal-bg);color:var(--retro-terminal-ink)}.ask-field:focus-within{outline:3px solid var(--accent);outline-offset:2px}.ask-input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;padding:0;border:0;opacity:0;font-size:16px;color:transparent;background:transparent}.ask-typed{display:block;font:400 clamp(1.5rem,4.5vw,2.25rem)/1.2 var(--font-pixel);white-space:pre-wrap;overflow-wrap:anywhere;pointer-events:none}.ask-caret{display:inline-block;width:.5em;height:1em;margin-left:2px;vertical-align:-.12em;background:currentColor;animation:ask-blink 1s steps(1) infinite}.ask-hint{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3);margin:0;font-size:var(--type-small)}.ask-button{display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;min-width:44px;min-height:44px;padding:8px 16px;border:2px solid;border-color:var(--retro-highlight) var(--retro-edge) var(--retro-edge) var(--retro-highlight);border-radius:0;background:var(--retro-chrome);color:var(--retro-ink);font:600 16px/1.2 var(--font-pixel);text-decoration:none;cursor:pointer}.ask-button:active:not(:disabled){border-color:var(--retro-edge) var(--retro-highlight) var(--retro-highlight) var(--retro-edge)}.ask-button:disabled{color:var(--retro-etch);cursor:default}.ask-button:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.ask-close{position:absolute;top:3px;right:3px;min-height:44px;padding:6px 10px}.ask-bubble{align-self:flex-end;max-width:85%;margin:0;padding:var(--space-2) var(--space-3);border:2px solid;border-color:var(--retro-highlight) var(--retro-edge) var(--retro-edge) var(--retro-highlight);background:var(--retro-title);color:var(--retro-title-ink);overflow-wrap:anywhere}.ask-log{display:flex;flex-direction:column;gap:var(--space-2);min-height:160px;max-height:50dvh;overflow-y:auto;padding:var(--space-3);border:2px solid;border-color:var(--retro-edge) var(--retro-highlight) var(--retro-highlight) var(--retro-edge);background:var(--retro-terminal-bg);color:var(--retro-terminal-ink);font:400 1.25rem/1.3 var(--font-pixel)}.ask-log p{margin:0;overflow-wrap:anywhere}.ask-status{display:flex;align-items:center;gap:var(--space-3);color:var(--retro-boot-accent)}.ask-line{animation:ask-line-in var(--motion-short) steps(2) both}.ask-line-fact:before{content:"> ";color:var(--retro-boot-accent)}.ask-line-lesson{color:var(--retro-crt-beam)}.ask-line-answer{color:var(--ask-loader)}.ask-loader{display:inline-flex;gap:4px}.ask-loader i{width:10px;height:10px;background:var(--ask-loader);animation:ask-blink .9s steps(1) infinite}.ask-loader i:nth-child(2){animation-delay:.3s}.ask-loader i:nth-child(3){animation-delay:.6s}.ask-visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}@keyframes ask-blink{50%{opacity:0}}@keyframes ask-line-in{0%{opacity:0}}@media(prefers-reduced-motion:reduce){.ask-caret,.ask-loader i,.ask-line{animation:none}}@media(max-width:760px){.ask-overlay{align-items:flex-start;padding:max(12px,env(safe-area-inset-top)) 12px max(12px,env(safe-area-inset-bottom))}.ask-panel{max-height:calc(100dvh - 24px);padding:62px var(--space-3) var(--space-3)}.ask-bubble{max-width:100%}}:root[data-mode=classic] .ask-panel{padding-top:72px;border:1px solid var(--border);border-radius:var(--radius-dialog);background:var(--surface);color:var(--ink)}:root[data-mode=classic] .ask-panel:before{content:none}:root[data-mode=classic] .ask-prompt{font:600 clamp(1.75rem,5vw,2.5rem)/1.15 var(--font-display);letter-spacing:-.01em}:root[data-mode=classic] :is(.ask-field,.ask-log){border:1px solid var(--border);border-radius:var(--radius-frame);background:var(--surface-soft);color:var(--ink)}:root[data-mode=classic] .ask-typed{font:500 clamp(1.25rem,4vw,1.75rem)/1.3 var(--font-body)}:root[data-mode=classic] .ask-log{font:400 var(--type-body)/1.5 var(--font-body)}:root[data-mode=classic] :is(.ask-status,.ask-line-fact:before,.ask-line-answer){color:var(--accent)}:root[data-mode=classic] .ask-line-lesson{color:var(--ink);font-weight:600}:root[data-mode=classic] .ask-loader i{border-radius:50%;background:var(--accent)}:root[data-mode=classic] .ask-bubble{border:0;border-radius:var(--radius-frame);background:var(--accent);color:var(--paper)}:root[data-mode=classic] .ask-button{border:1px solid var(--border);border-radius:var(--radius-control);background:var(--surface);color:var(--ink);font:500 var(--type-body)/1.2 var(--font-body)}:root[data-mode=classic] .ask-button:disabled{color:var(--muted)}:root[data-mode=classic] .ask-close{top:12px;right:12px}@font-face{font-family:Figtree;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/figtree-latin.woff2) format("woff2")}@font-face{font-family:VT323;font-style:normal;font-weight:400 700;font-display:swap;size-adjust:128%;src:url(/fonts/vt323-latin.woff2) format("woff2")}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/space-grotesk-latin.woff2) format("woff2")}:root{--retro-tooltip-bg: #ffffe1;--retro-tooltip-ink: #161616;--retro-chrome: #42464c;--retro-ink: #f1f0ea;--retro-highlight: #747b84;--retro-edge: #1b1e22;--retro-etch: #747b84;--retro-title: #132a7a;--retro-title-ink: #ffffff;--retro-inactive-title: #4c525b;--retro-wallpaper-0: #123b3c;--retro-wallpaper-1: #18314f;--retro-wallpaper-2: #392c48;--retro-icon-ink: #e8dec1;--retro-scanline: #000000;--retro-crt-off: #050807;--retro-crt-beam: #e9fff3;--retro-dither-light: #ffffff1f;--retro-dither-dark: #0000002e;--retro-crt-shade: #000000a6;--retro-crt-bezel: #00000059;--retro-phosphor: #9fe8c066;--retro-boot-bg: #090d0c;--retro-boot-ink: #d5e5d9;--retro-boot-accent: #80bf96;--pix-k: #141414;--pix-w: #ffffff;--pix-g: #c3c3c3;--pix-d: #7d7d7d;--pix-b: #1d3fb8;--pix-c: #2bb3c6;--pix-l: #8fd0f2;--pix-y: #f2c94c;--pix-o: #b4702a;--pix-r: #c43a2f;--pix-n: #3fa553;--retro-terminal-bg: #101512;--retro-terminal-ink: #c1dfc8;--game-ceiling: #202633;--game-floor: #292a27;--game-wall: #57758b;--game-target: #b83443;--game-ink: #ffffff;--game-crosshair: #a8d7b4;--game-beetle: #6d4f96;--game-fly: #4f8a3c;--game-splat: #9cc44a;--game-gun: #a3a196;--game-flash: #ffe28a;--game-hurt: #d0202f;--sweep-lcd-bg: #0b0b0b;--sweep-lcd-ink: #ff3b30;--sweep-tile: #5a6068;--sweep-open: #2a2d31;--sweep-exploded: #c0392b;--sweep-1: #7fa7ff;--sweep-2: #6fcf7f;--sweep-3: #ff7a6e;--sweep-4: #b48cff;--sweep-5: #ffb35c;--sweep-6: #5fd6d6;--sweep-7: #f1f0ea;--sweep-8: #a5a5ac;--word-correct: #325f44;--word-present: #6a5b2e;--word-absent: #41474c;--word-ink: #ffffff;--desk-retro-shell: #d6cbb4;--desk-retro-edge: #a99b80;--desk-retro-key: #ece1ca;--desk-retro-recess: #37372e;--desk-note-yellow: #ead978;--desk-note-green: #a8cda4;--desk-note-ink: #25271f;--desk-badge: #365f79;--desk-led: #68a94e;--desk-lamp: #334f43;--desk-mug: #712e32;--desk-sky-day: #a9cbe0;--desk-sky-dusk: #e09a5f;--desk-sky-night: #121c38;--desk-coffee: #3a2618;--desk-curtain: #365b58;--desk-curtain-rod: #2a2622;--desk-plant: #4d7a46;--desk-pot: #a2593c;--desk-rug: #365b58;--desk-rug-edge: #c9b48a;--desk-cork: #a7804f;--desk-pin: #c0392b;--desk-book-a: #365b58;--desk-book-b: #7a3b2e;--desk-book-c: #b39763;--desk-night-warm: #ffd9b0;--desk-fairy-bulb: #ffcf8a;--desk-fairy-wire: #2b2620;--desk-cat-fur: #141414;--desk-cat-eye: #f2d23c;--desk-cat-pink: #d98a96;--desk-daylight: #d2e2ed;--desk-key-light: #ffe4bd;--paper: #111113;--ink: #eeeef0;--surface: #19191c;--surface-soft: #212124;--muted: #a5a5ac;--border: #343439;--accent: #75c696;--backdrop: #000000bd;--desk-world: #283335;--desk-wall: #465650;--desk-board: #75513a;--desk-frame: #343b36;--desk-wainscot: #394944;--desk-trim: #65746a;--desk-floor: #625344;--desk-floor-alternate: #695848;--desk-land-far: #8da7a0;--desk-land-near: #658477;--desk-leaf-light: #779454;--desk-hawas-top: #8583b5;--desk-hawas-blue: #426d98;--desk-hawas-base: #154964;--desk-hawas-cap: #eee9d9;--desk-hawas-ink: #fffaf0;--desk-fragrance-stone: #d4d4ce;--desk-fragrance-brown: #82503b;--desk-fragrance-gold: #c8b081;--desk-fragrance-red: #bc3035;--desk-fragrance-silver: #b5bfc0;--desk-hardware-black: #151619;--desk-hardware-edge: #303237;--desk-hardware-detail: #72757d;--desk-display-glass: #11151b;--desk-purple-led: #8e47e6;--desk-key-legend: #aaa1ba;--desk-object-dark: #1a1b1a;--desk-screen: #151617;--desk-key: #202125;--desk-accent: #ad7852;--desk-paper: #f0e9df;--ask-backdrop: #050608e0;--ask-loader: #80bf96;--desk-duck: #f2c230;--desk-duck-beak: #e0782a;--grain-opacity: .04;color-scheme:dark;--font-body: Tahoma, "Segoe UI", Verdana, sans-serif;--font-display: var(--font-body);--font-pixel: "VT323", Tahoma, "Segoe UI", sans-serif;--type-label: .8125rem;--type-small: .875rem;--type-body: 1rem;--type-lead: 1.125rem;--type-case-body: .9375rem;--type-card-title: 1rem;--type-title: 1.25rem;--type-section: 1.25rem;--type-mobile-heading: 1.5rem;--type-hero: 2rem;--type-archive: var(--type-hero);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 32px;--space-8: 40px;--space-9: 48px;--space-10: 56px;--space-11: 64px;--space-detail-gap: 28px;--space-detail-gap-mobile: 24px;--radius-control: 0;--radius-frame: 0;--radius-dialog: 0;--radius-shell: 0;--motion-short: .16s;--motion-click: .18s;--ease-precise: cubic-bezier(.2, .7, .25, 1);--content-measure: 65ch;--content-width: 780px;--content-width-wide: 960px;--section-space: 40px;--section-space-mobile: 36px;--section-inset: 20px;--section-inset-mobile: 18px;--page-space-top: 44px;--page-space-bottom: 80px}@media(max-width:760px){:root{--type-hero: 1.625rem}}:root[data-theme=dark]{--paper: #111113;--ink: #eeeef0;--surface: #19191c;--surface-soft: #212124;--muted: #a5a5ac;--border: #343439;--accent: #75c696;--backdrop: #000000bd;--desk-world: #283335;--desk-wall: #465650;--desk-board: #75513a;--desk-frame: #343b36;--desk-object-dark: #1a1b1a;--desk-screen: #151617;--desk-key: #202125;--desk-accent: #ad7852;--desk-paper: #f0e9df;--grain-opacity: .04;color-scheme:dark}:root[data-theme=light]{--retro-chrome: #c0c0c0;--retro-ink: #161616;--retro-highlight: #ffffff;--retro-edge: #555555;--retro-etch: #808080;--retro-title: #000080;--retro-inactive-title: #707070;--retro-wallpaper-0: #008080;--retro-wallpaper-1: #255273;--retro-wallpaper-2: #574264;--retro-icon-ink: #fff0c3;--sweep-tile: #c0c0c0;--sweep-open: #d4d4d4;--sweep-exploded: #ff0000;--sweep-1: #0000ff;--sweep-2: #007b00;--sweep-3: #ff0000;--sweep-4: #00007b;--sweep-5: #7b0000;--sweep-6: #007b7b;--sweep-7: #000000;--sweep-8: #7b7b7b;--paper: #faf9f6;--ink: #242426;--surface: #ffffff;--surface-soft: #f1f0ed;--muted: #626267;--border: #deddda;--accent: #247348;--backdrop: #141416b8;--desk-world: #cfc8b8;--desk-wall: #e2d9c6;--desk-board: #906547;--desk-frame: #514737;--desk-wainscot: #bfb299;--desk-trim: #8c7d69;--desk-floor: #9c7a5a;--desk-floor-alternate: #a5815f;--desk-curtain: #5d8781;--desk-rug: #5d8781;--desk-rug-edge: #e3d3ae;--desk-book-a: #4f7f78;--desk-object-dark: #302d29;--desk-screen: #f4f1e9;--desk-key: #202125;--desk-accent: #9f6949;--desk-paper: #f0e9df;--grain-opacity: .03;color-scheme:light}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:auto}body{background:var(--paper);color:var(--ink);font:400 var(--type-body)/1.6 var(--font-body)}button,input,select,textarea{font:inherit;color:inherit;background:var(--surface)}button,a,[role=button],[role=option]{cursor:pointer}@media(hover:hover)and (pointer:fine){body{cursor:url(/cursors/white-pointer.svg) 1 1,auto}:is(button:not(:disabled),a:not([aria-disabled=true]),[role=button]:not([aria-disabled=true]),[role=option]:not([aria-disabled=true]),select:not(:disabled)){cursor:url(/cursors/white-hand.svg) 7 3,pointer}:is(input:not([type]),input[type=text],input[type=email],input[type=password],input[type=search],input[type=tel],input[type=url],input[type=number],textarea,[contenteditable=true]){cursor:text}}button,input,select,textarea{border:1px solid var(--border);border-radius:var(--radius-control)}button,a,input,select,textarea,[tabindex]{min-width:44px;min-height:44px}a{color:inherit;text-decoration:none}:is(a,button,input,select,textarea,[tabindex]):focus-visible{outline:3px solid var(--ink);outline-offset:3px}::selection{background:var(--ink);color:var(--paper)}::placeholder{color:var(--muted)}img{display:block;max-width:100%;height:auto}svg{flex-shrink:0}p{max-width:var(--content-measure)}h1,h2,h3,h4{font-weight:600;overflow-wrap:anywhere;line-height:1.3}[hidden]{display:none!important}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}.studio-system{min-width:0;isolation:isolate}.studio-system:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;background:url(/images/grain.png) repeat;opacity:var(--grain-opacity);pointer-events:none}.studio-topographic-page{position:relative;isolation:isolate}.studio-topography{position:absolute;z-index:-1;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none}.studio-topography-cluster{position:absolute;width:176px;height:176px;overflow:visible;color:var(--border);opacity:.78}.studio-topography-cluster path{stroke:currentColor;stroke-width:1.1;vector-effect:non-scaling-stroke}.studio-topography-cluster-top{top:12%;right:-72px}.studio-topography-cluster-bottom{bottom:12%;left:-92px;transform:rotate(21deg) scale(.86)}.studio-container{width:100%;max-width:calc(var(--content-width) + 96px);margin-inline:auto;padding-inline:48px}.font-mono{font-family:var(--font-body)}.studio-action,.studio-text-action,.studio-icon-button,.btn,.code-link-btn,.screenshot-product-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:44px;min-height:44px;padding:10px 16px;border:1px solid var(--border);border-radius:var(--radius-control);background:var(--surface);color:var(--ink);font-weight:500}.studio-action:hover,.studio-icon-button:hover,.btn:hover,.code-link-btn:hover,.screenshot-product-btn:hover{background:var(--surface-soft);border-color:var(--muted)}.studio-action-outline{background:transparent}.studio-text-action{border:0;background:transparent;padding:8px}.studio-icon-button{width:44px;height:44px;padding:0}.studio-logo{display:inline-flex;align-items:center;gap:10px;padding:4px;font-weight:600}.studio-monogram{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--border);border-radius:0;font-size:var(--type-small)}.studio-navbar{position:fixed;z-index:100;inset:16px auto 16px 16px;width:248px;display:flex;flex-direction:column;padding:20px 14px;border:1px solid var(--border);border-radius:var(--radius-shell);background:var(--surface);overflow-y:auto}.studio-nav-inner{position:relative;display:flex;justify-content:space-between;align-items:center;gap:8px}.studio-nav-inner .studio-logo{font-size:1.0625rem}.studio-nav-desktop{position:relative;display:flex;flex:1;flex-direction:column;padding-top:28px}.studio-sidebar-actions{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;margin-bottom:28px}.studio-sidebar-actions .studio-action{min-width:0;padding-inline:8px;font-size:var(--type-small);white-space:nowrap}.studio-nav-label{color:var(--muted);font-size:var(--type-label);margin:0 12px 10px}.studio-nav-links{display:grid;gap:4px}.studio-nav-links :is(a,button){position:relative;display:flex;align-items:center;gap:12px;min-height:44px;padding:10px 12px;border:0;border-radius:var(--radius-control);background:transparent;text-align:left;font-size:var(--type-small);line-height:1.25}.studio-nav-links svg{width:18px;height:18px;flex:0 0 18px;color:var(--muted)}.studio-nav-links :is(a,button):hover{background:var(--surface-soft)}.studio-nav-links [aria-current]{background:var(--surface-soft);font-weight:600}.studio-nav-links [aria-current]:before{content:"";position:absolute;top:10px;bottom:10px;left:0;width:3px;border-radius:0;background:var(--ink)}.studio-nav-links [aria-current] svg{color:var(--ink)}.studio-nav-divider{height:1px;margin:8px 12px;background:var(--border)}.studio-sidebar-utilities{margin-top:auto;padding-top:16px}.studio-sidebar-fidget,.studio-sidebar-theme{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid var(--border);color:var(--muted);font-size:var(--type-small)}.studio-sidebar-fidget{padding-block:8px}.studio-contour-button{background:transparent}.studio-contour-glyph{width:32px;height:32px;color:var(--ink);opacity:.75;transform-origin:center;transition:transform var(--motion-short) var(--ease-precise)}.studio-contour-glyph path{stroke:currentColor;stroke-width:1.2;vector-effect:non-scaling-stroke}.studio-sidebar-theme{padding-top:12px}.studio-mobile-actions{display:none;gap:8px}.studio-menu-toggle{font-size:var(--type-lead)}.studio-drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;width:100%;height:100dvh;max-width:none;max-height:none;border:0;background:transparent;color:var(--ink)}.studio-drawer-backdrop::backdrop{background:var(--backdrop)}.studio-mobile-menu{position:absolute;inset:0 auto 0 0;width:min(320px,calc(100% - 32px));padding:24px;background:var(--surface);overflow-y:auto;animation:drawer-enter var(--motion-short) var(--ease-precise) both}.studio-drawer-backdrop::backdrop{animation:studio-backdrop-enter var(--motion-short) var(--ease-precise) both}.studio-drawer-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:24px}.studio-mobile-menu .studio-sidebar-utilities{padding-top:20px}@keyframes drawer-enter{0%{transform:translate(-24px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes studio-backdrop-enter{0%{opacity:0}to{opacity:1}}.studio-footer{margin-top:32px}.studio-footer-inner{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;padding-block:32px;border-top:1px solid var(--border)}.footer-left-info,.studio-footer-links{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.footer-copy-text{font-size:var(--type-small);color:var(--muted)}.studio-footer-links{gap:4px}.studio-footer-links :is(a,button){display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:0;border-radius:0;background:transparent}.studio-footer-links :hover{background:var(--surface-soft)}kbd{padding:2px 4px;border:1px solid var(--border);border-radius:0;font-family:var(--font-body);font-size:var(--type-label)}.contact-email-cta{display:inline-flex;align-items:center;gap:12px;width:fit-content;max-width:100%;padding:12px 16px;margin:20px 0 8px;border:1px solid var(--border);border-radius:0;background:var(--surface)}.contact-email-cta-copy{min-width:0}.contact-email-cta strong,.contact-email-cta small{display:block}.contact-email-cta small{font-size:var(--type-small);overflow-wrap:anywhere;color:var(--muted)}.studio-project-page-header>.studio-text-action,.outside-page-nav-bar-top .studio-text-action{color:var(--muted);font-size:var(--type-small)}.browser-chrome{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:12px;border-bottom:1px solid var(--border);font-size:var(--type-small)}.browser-chrome-status{margin-left:auto;font-weight:600}.browser-chrome-dots{display:flex;gap:4px}.browser-chrome-dots i{display:block;width:6px;height:6px;border-radius:50%;background:var(--muted)}.studio-project-preview,.gear-media-box,.studio-portrait-frame,.case-study-item{border:1px solid var(--border);border-radius:var(--radius-frame);background:var(--surface)}button:disabled{cursor:not-allowed;color:var(--muted)}@media(min-width:1100px){.studio-system{padding-left:280px}}@media(max-width:1099px){.studio-navbar{inset:0 0 auto;width:100%;height:72px;padding:12px 24px;border-width:0 0 1px;border-radius:0;overflow:visible}.studio-nav-desktop{display:none}.studio-mobile-actions{display:flex}}@media(max-width:760px){.studio-container{padding-inline:24px}.studio-footer-inner{grid-template-columns:1fr}}.studio-hero{padding:var(--page-space-top) 0 32px;scroll-margin-top:88px}.studio-profile-row{display:flex;align-items:center;gap:12px}.studio-profile-photo{width:88px;height:88px;border:1px solid var(--border);border-radius:50%;object-fit:cover}.studio-profile-name{font-size:1.25rem;font-weight:600}.studio-hero-role{color:var(--muted);font-size:var(--type-small)}.studio-profile-resume{margin-left:auto;font-size:var(--type-small)}.studio-hero-name{margin-top:12px;font:500 var(--type-hero)/1.25 var(--font-display);letter-spacing:-.025em;max-width:25ch}.studio-hero-actions,.studio-hero-socials{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.studio-hero-actions{margin-top:20px}.studio-hero-socials{gap:4px}.studio-hero-socials :is(a,button){display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:0;border-radius:0;background:transparent;color:var(--ink)}.studio-hero-socials svg{width:20px;height:20px}.studio-hero-socials :is(a,button):hover{background:var(--surface-soft)}.studio-section{padding-block:var(--section-inset);scroll-margin-top:88px}.studio-section-heading{margin-bottom:20px}.studio-section-heading h2{font:600 var(--type-section)/1.3 var(--font-display)}.studio-section-heading-copy>p{margin-top:8px;color:var(--muted);font-size:var(--type-small)}.studio-project-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--space-4);row-gap:24px}.studio-project{display:block;min-width:0;overflow:hidden;border-radius:var(--radius-frame);background:transparent;color:var(--ink);text-decoration:none}.studio-project:hover{background:transparent}.studio-project-preview{position:relative;overflow:hidden;margin:0;border-radius:var(--radius-frame)}.studio-project:hover .studio-project-preview{border-color:var(--muted)}.studio-project-image{aspect-ratio:16 / 10;background:var(--surface-soft);border-radius:0;overflow:hidden}.studio-project-image img{width:100%;height:100%;object-fit:contain}.studio-project-preview-label{position:absolute;bottom:8px;left:8px;max-width:calc(100% - 16px);padding:6px 8px;border:1px solid var(--border);border-radius:0;background:var(--surface);color:var(--ink);font-size:var(--type-label);font-weight:700;letter-spacing:.04em}.studio-project-title{padding:8px 0 0;font:600 var(--type-card-title)/1.35 var(--font-display)}.studio-about{padding-top:8px}.studio-about-layout{display:block}.studio-about-lead{color:var(--muted)}.studio-timeline{list-style:none}.studio-timeline-item{display:grid;grid-template-columns:160px minmax(0,1fr);gap:24px;padding-block:28px;border-top:1px solid var(--border)}.studio-timeline-meta{font-size:var(--type-small);color:var(--muted)}.studio-timeline-copy h3{font-size:1rem}.studio-timeline-copy>p{margin-top:8px;font-size:var(--type-case-body);color:var(--muted)}.studio-proof{display:inline-block;margin-top:12px;padding:4px 8px;border:1px solid var(--border);border-radius:0;font-size:var(--type-label);font-weight:500}.studio-stack-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:8px;border-bottom:1px solid var(--border)}.studio-stack-heading h2{font:600 var(--type-section)/1.3 var(--font-display)}.studio-skills{display:flex;flex-direction:column}.studio-skill-row{display:grid;grid-template-columns:minmax(140px,.34fr) minmax(0,1fr);align-items:center;gap:24px;border-bottom:1px solid var(--border)}.studio-skill-category{display:inline-flex;align-items:center;min-height:43px;padding:8px 0;color:var(--muted);font-size:var(--type-small);line-height:1.4}.studio-skill-list{display:flex;flex-wrap:wrap;align-items:center;gap:0;min-width:0;margin:0;padding:0;list-style:none}.studio-skill-list>li{display:inline-flex;align-items:center;min-height:43px;max-width:100%}.studio-skill{display:inline-flex;align-items:center;min-height:43px;max-width:100%;padding:8px 0;border:0;background:transparent;color:var(--ink);font-size:var(--type-small);line-height:1.4;text-align:left;overflow-wrap:anywhere}.studio-skill-separator{padding-right:8px;color:var(--muted)}.studio-awards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 32px}.studio-award{padding-block:20px;border-top:1px solid var(--border)}.award-header-row{display:flex;align-items:center;gap:10px;margin-bottom:12px}.award-category-pill{font-size:var(--type-label);color:var(--muted)}.studio-award h3{font-size:1rem}.studio-award p{margin-top:8px;font-size:var(--type-case-body);color:var(--muted)}@media(max-width:1099px){.studio-hero{padding-top:112px}}@media(max-width:760px){.studio-hero{padding-top:100px;padding-bottom:28px}.studio-profile-row{flex-wrap:wrap;gap:12px}.studio-profile-photo{width:72px;height:72px}.studio-profile-resume{margin-left:0}.studio-project-list,.studio-awards,.studio-timeline-item{grid-template-columns:1fr}.studio-timeline-item{gap:10px;padding-block:24px}.studio-section{padding-block:var(--section-inset-mobile)}.studio-about{padding-top:8px}.studio-skill-row{grid-template-columns:minmax(86px,.38fr) minmax(0,1fr);gap:12px}}.studio-project-page{padding-block:var(--page-space-top) var(--page-space-bottom)}.studio-project-page-header{margin-bottom:var(--section-space)}.studio-project-page-header h1{margin-top:0;font:600 var(--type-hero)/1.2 var(--font-display)}.studio-project-page-header>p{margin-top:10px;color:var(--muted)}.studio-project-detail-list{display:grid;gap:var(--space-detail-gap)}.studio-project-detail{padding-top:var(--space-6);border-top:1px solid var(--border);scroll-margin-top:88px}.studio-project-detail-header{max-width:var(--content-measure)}.studio-project-detail-kicker{color:var(--muted);font-size:var(--type-small)}.studio-project-detail-header h2{margin-top:8px;font:600 var(--type-section)/1.3 var(--font-display)}.studio-project-detail-role{margin-top:12px;font-size:var(--type-small);font-weight:600}.studio-project-detail-role span{color:var(--muted)}.studio-project-detail-summary{margin-top:16px;line-height:1.6}.studio-project-detail-preview{margin-top:var(--space-6);overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-frame);background:var(--surface)}.studio-project-detail-preview img{display:block;width:100%;height:auto;max-height:360px;object-fit:contain;object-position:top center}.studio-project-preview-open{display:block;width:100%;min-height:44px;padding:0;border:0;background:none;color:inherit;cursor:pointer}.studio-project-detail-preview:has(>.studio-project-preview-open:focus-visible){overflow:visible}.studio-project-detail-preview figcaption{display:flex;flex-wrap:wrap;gap:8px 12px;padding:12px 16px;border-top:1px solid var(--border);color:var(--muted);font-size:var(--type-small)}.studio-project-detail-preview figcaption strong{color:var(--ink);font-size:var(--type-label);letter-spacing:.04em}.studio-project-detail-content{display:grid;gap:var(--section-space);margin-top:var(--space-6)}.studio-project-detail-content h3{margin-bottom:var(--space-4);font:600 var(--type-card-title)/1.3 var(--font-display)}.studio-project-detail-description{white-space:pre-line;font-size:var(--type-case-body);line-height:1.7}.studio-project-case-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-6)}.studio-project-case-item{padding-top:14px;border-top:1px solid var(--border)}.studio-project-case-item h4{margin-bottom:var(--space-2);font-size:var(--type-body)}.studio-project-case-item p{color:var(--muted);font-size:var(--type-case-body);line-height:1.6}.studio-project-detail-highlights{display:grid;gap:var(--space-3);padding-left:22px}.studio-project-detail-highlights li{padding-left:4px;line-height:1.6}.studio-project-detail-stack{display:flex;flex-wrap:wrap;gap:8px;padding:0;list-style:none}.studio-project-detail-stack li{padding:6px 10px;border:1px solid var(--border);border-radius:0;font-size:var(--type-small)}.studio-project-detail-actions{display:flex;flex-wrap:wrap;gap:8px}.studio-project-detail-access{color:var(--muted);font-size:var(--type-small)}@media(max-width:1099px){.studio-project-page{padding-top:112px}}@media(max-width:760px){.studio-project-page{padding-top:100px}.studio-project-detail-list{gap:var(--space-detail-gap-mobile)}.studio-project-detail-content{gap:var(--section-space-mobile)}.studio-project-case-grid{grid-template-columns:1fr}.studio-project-detail-actions>*{width:100%}}.studio-after-hours{padding-top:var(--page-space-top)}.studio-archive-section{padding-bottom:var(--section-space)}.outside-page-nav-bar-top{margin-bottom:var(--space-6)}.studio-archive-header{margin-bottom:var(--section-space)}.studio-archive-header h1{font:500 var(--type-archive)/1.1 var(--font-display);margin-block:0}.studio-archive-header>p{font-size:var(--type-body)}.gear-catalog-container{display:flex;flex-direction:column;gap:var(--section-space)}.after-hours-photo-section{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;gap:var(--space-8)}.photo-deck-wrapper{display:flex;flex-direction:column;align-items:center;gap:var(--space-5);padding:20px 8px;min-width:0}.photo-deck-stack{position:relative;width:min(260px,100%);aspect-ratio:1;touch-action:pan-y}.deck-photo-card{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;border:0;border-radius:0;background:transparent;padding:0;cursor:grab;-webkit-user-select:none;user-select:none}.deck-stack-level-0{z-index:4;transform:rotate(-4deg) translate(-4px,1px)}.deck-stack-level-1{z-index:3;transform:translate(8px,5px) rotate(4deg)}.deck-stack-level-2{z-index:2;transform:translate(-5px,8px) rotate(-8deg)}.deck-photo-img{width:100%;height:100%;object-fit:cover;border-radius:inherit}.deck-photo-fallback{display:grid;place-content:center;height:100%;color:var(--muted);font-size:var(--type-small)}.studio-photo-controls{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:12px}.studio-photo-controls button{padding:8px 12px}.gear-category-header{margin-bottom:var(--space-6)}.gear-section-heading{font:600 var(--type-section)/1.1 var(--font-display)}.gear-bento-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-6) var(--space-4)}.gear-card{min-width:0}.gear-media-box{position:relative;aspect-ratio:4 / 3}.gear-photo-container,.gear-schematic-frame{display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:12px}.gear-photo-img{width:100%;height:100%;object-fit:contain}.gear-schematic-frame{background:var(--surface)}.gear-schematic-svg{width:80%}.gear-photo-controls{position:absolute;z-index:2;bottom:8px;left:8px;right:8px;display:flex;align-items:center;justify-content:space-between;gap:8px}.gear-photo-nav-btn,.gear-photo-dot{width:44px;height:44px}.gear-photo-nav-btn{font-size:var(--type-lead)}.gear-photo-dots{display:flex;gap:4px}.gear-photo-dot{position:relative}.gear-photo-dot:after{content:"";position:absolute;top:16px;right:16px;bottom:16px;left:16px;border:2px solid currentColor}.gear-photo-dot.active{background:var(--ink);color:var(--paper)}.gear-info-block{padding-top:20px}.gear-media-link{display:block;width:100%;height:100%;cursor:pointer}.gear-title-link{display:flex;align-items:center;padding:4px}.gear-title{font-size:var(--type-lead);line-height:1.6}.outside-page-nav-bar-bottom{margin-top:var(--section-space)}@media(max-width:1099px){.studio-after-hours{padding-top:112px}}@media(max-width:760px){.studio-after-hours{padding-top:100px}.studio-archive-header{margin-bottom:var(--section-space-mobile)}.after-hours-photo-section{grid-template-columns:1fr;gap:20px}.photo-deck-stack{width:min(220px,100%)}.gear-catalog-container{gap:var(--section-space-mobile)}.outside-page-nav-bar-bottom{margin-top:var(--section-space-mobile)}}@media(max-width:540px){.gear-bento-grid{grid-template-columns:1fr}}.studio-gear-collections .outside-page-nav-bar-top{margin-bottom:var(--space-6)}.studio-gear-collections .gear-home-link{color:var(--muted);font-size:var(--type-small)}.studio-gear-collections .studio-archive-header{margin-bottom:var(--section-space)}.studio-gear-collections .gear-category-header{padding-bottom:var(--space-3);margin-bottom:var(--space-4);border-bottom:1px solid var(--border)}.studio-gear-collections .gear-section-heading{font-size:var(--type-section);font-weight:600}.studio-gear-collections .gear-bento-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-5) var(--space-4)}.studio-gear-collections .gear-media-box{aspect-ratio:1.25;border-radius:var(--radius-frame)}.studio-gear-collections .gear-photo-container{padding:8px}.studio-gear-collections .gear-info-block{padding-top:8px}.studio-gear-collections .gear-title-link{min-height:44px;padding:4px 0}.studio-gear-collections .gear-title{font-size:var(--type-card-title);font-weight:500;line-height:1.4}@media(max-width:760px){.studio-gear-collections .studio-archive-header{margin-bottom:var(--section-space-mobile)}.studio-gear-collections .gear-bento-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-5) var(--space-3)}}@media(max-width:540px){.studio-gear-collections .gear-bento-grid{grid-template-columns:1fr;gap:var(--space-5)}}.cursor-click-effects{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1400;pointer-events:none;overflow:hidden;cursor:auto}.cursor-click-effect{position:fixed;width:34px;height:34px;color:var(--ink);transform:translate(-50%,-50%);pointer-events:none}.cursor-click-ripple{position:absolute;top:0;right:0;bottom:0;left:0;border:1px solid currentColor;border-radius:46% 54% 57% 43%/52% 45% 55% 48%;animation:cursor-liquid-pop var(--motion-click) var(--ease-precise) both}.cursor-click-ripple-second{top:4px;right:4px;bottom:4px;left:4px;animation-delay:5ms}.cursor-click-ripple-third{top:8px;right:8px;bottom:8px;left:8px;animation-delay:10ms}.cursor-click-ripple-fourth{top:12px;right:12px;bottom:12px;left:12px;animation-delay:15ms}.cursor-click-ripple-inner{top:16px;right:16px;bottom:16px;left:16px;animation-delay:20ms}@keyframes cursor-liquid-pop{0%{transform:scale(.14) rotate(-18deg);opacity:.82;border-radius:46% 54% 57% 43%/52% 45% 55% 48%}58%{transform:scale(.86) rotate(8deg);opacity:.62;border-radius:62% 38% 48% 52%/42% 58% 44% 56%}to{transform:scale(1.75) rotate(18deg);opacity:0;border-radius:50%}}@media(prefers-reduced-motion:reduce){.cursor-click-effects{display:none}}.modal-overlay,.screenshot-modal-overlay,.cmd-palette-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px}.screenshot-modal-overlay{z-index:1100}.cmd-palette-backdrop{z-index:1200;align-items:start;padding-top:12dvh}.modal-overlay:before,.screenshot-modal-overlay:before,.cmd-palette-backdrop:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--backdrop);animation:overlay-backdrop-enter var(--motion-short) var(--ease-precise) both}.modal-card,.screenshot-modal-content,.cmd-palette-card{position:relative;width:100%;background:var(--surface);color:var(--ink);border:1px solid var(--border);border-radius:var(--radius-dialog);animation:overlay-surface-enter var(--motion-short) var(--ease-precise) both}@keyframes overlay-backdrop-enter{0%{opacity:0}to{opacity:1}}@keyframes overlay-surface-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.modal-card{max-width:840px;max-height:calc(100dvh - 48px);overflow-y:auto;padding:24px}.modal-close,.screenshot-modal-close{position:absolute;top:12px;right:12px;display:inline-flex;justify-content:center;align-items:center;width:44px;height:44px}.modal-meta-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding-right:52px;min-height:44px;margin-bottom:16px}.modal-badge,.stamp{font-size:var(--type-small)}.modal-badge,.stamp{display:inline-block;padding:4px 8px;border:1px solid var(--border);border-radius:0}.modal-heading-row{display:flex;flex-wrap:wrap;gap:16px;align-items:center}.modal-title{font-size:var(--type-section);line-height:1.25}.modal-status-wrap{margin-top:16px}.modal-section-title{margin:24px 0 12px;padding-top:16px;border-top:1px solid var(--border);font-weight:700}.screenshot-carousel{margin-top:var(--space-6);border:1px solid var(--border);border-radius:var(--radius-frame)}.carousel-tabs{display:flex;flex-wrap:wrap;padding:8px;gap:8px;border-bottom:1px solid var(--border)}.carousel-tab{padding:8px 12px}.carousel-tab.active,.carousel-slide-chip.active{background:var(--ink);color:var(--paper)}.carousel-frame{position:relative}.project-screenshot{position:relative;aspect-ratio:16 / 10}.project-screenshot img{width:100%;height:100%;object-fit:contain}.project-screenshot-overlay{position:absolute;bottom:12px;left:50%;transform:translate(-50%);max-width:calc(100% - 24px);padding:8px;background:var(--surface);color:var(--ink);border:1px solid var(--border);font-size:var(--type-small);text-align:center;pointer-events:none}.project-screenshot:hover .project-screenshot-overlay{background:var(--ink);color:var(--paper)}.carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;font-size:var(--type-lead)}.carousel-prev{left:8px}.carousel-next{right:8px}.carousel-footer,.carousel-slide-chips{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.carousel-footer{padding:12px;border-top:1px solid var(--border);justify-content:space-between}.carousel-label{font-size:var(--type-small)}.carousel-slide-chip{display:inline-flex;align-items:center;gap:8px;padding:8px;font-size:var(--type-small)}.case-study-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 24px}.case-study-item{padding:16px 0;border:0;border-top:1px solid var(--border);border-radius:0;background:transparent}.case-study-result{grid-column:1 / -1}.case-study-label{display:block;margin-bottom:8px;color:var(--muted);font-size:var(--type-label);font-weight:700;letter-spacing:.04em;text-transform:uppercase}.case-study-text{margin-top:16px;font-size:var(--type-case-body);line-height:1.6}.modal-list{padding-left:24px}.modal-list li+li{margin-top:12px}.stack-row,.modal-links-row{display:flex;flex-wrap:wrap;gap:12px}.studio-stack-item{padding:4px 8px;border:1px solid var(--border);border-radius:0;font-size:var(--type-small)}.resume-modal-card{display:flex;flex-direction:column;max-width:1100px;height:calc(100dvh - 48px)}.resume-modal-header,.resume-modal-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.resume-modal-header{justify-content:space-between;padding-bottom:20px;margin-bottom:16px;border-bottom:1px solid var(--border)}.resume-modal-header .modal-title{font-size:var(--type-lead)}.resume-modal-actions .modal-close{position:static}.studio-resume-help{font-size:var(--type-small);margin-bottom:16px}.resume-embed-wrapper{flex:1;min-height:180px;border:1px solid var(--border)}.resume-object-embed{display:block;border:0}.studio-contact-dialog{position:fixed;top:0;right:0;bottom:0;left:0;width:min(520px,calc(100vw - 24px));max-width:none;max-height:calc(100dvh - 24px);margin:auto;padding:0;overflow:visible;border:0;background:transparent;color:var(--ink)}.studio-contact-dialog::backdrop{background:var(--backdrop)}.studio-contact-card{position:relative;display:grid;gap:16px;max-height:calc(100dvh - 24px);overflow-y:auto;padding:28px 24px 24px;border:1px solid var(--border);border-radius:var(--radius-dialog);background:var(--surface);color:var(--ink);animation:overlay-surface-enter var(--motion-short) var(--ease-precise) both}.studio-contact-card .modal-badge{margin:0}.studio-contact-card .modal-title{padding-right:48px}.studio-contact-help{color:var(--muted)}.studio-contact-field{display:grid;gap:8px;font-size:var(--type-small);font-weight:600}.studio-contact-field input,.studio-contact-field textarea{width:100%;padding:10px 12px;font-size:var(--type-body);font-weight:400}.studio-contact-field textarea{min-height:120px;resize:vertical}.studio-contact-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:12px}.studio-contact-actions .studio-action{padding:10px 16px}.screenshot-modal-content{width:fit-content;max-width:1200px;max-height:calc(100dvh - 48px);overflow-y:auto;padding:68px 20px 20px}.screenshot-modal-img{max-height:70dvh;width:auto;height:auto;max-width:100%;object-fit:contain}.screenshot-modal-caption{font-size:var(--type-small);margin-top:16px}.screenshot-modal-actions{margin-top:16px}.cmd-palette-card{max-width:640px;max-height:76dvh;display:flex;flex-direction:column}.cmd-palette-search-row{display:flex;align-items:center;gap:12px;padding:16px;border-bottom:1px solid var(--border)}.cmd-palette-input{width:100%;min-width:0;padding:8px}.cmd-esc-badge{padding:8px}.cmd-palette-list{overflow-y:auto;min-height:0;padding:8px}.cmd-palette-item{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:64px;padding:12px;border:2px solid transparent}.cmd-palette-item.selected{background:var(--ink);color:var(--paper)}.cmd-item-left{display:flex;align-items:center;gap:12px;min-width:0}.cmd-item-desc,.cmd-item-group{font-size:var(--type-small)}.cmd-item-title{font-weight:700}.cmd-item-right{display:flex;gap:8px;align-items:center}.cmd-palette-empty{padding:24px}.cmd-palette-footer{display:flex;flex-wrap:wrap;gap:12px;padding:16px;border-top:1px solid var(--border);font-size:var(--type-small)}.cmd-footer-keys{display:flex;flex-wrap:wrap;gap:12px}#toastLayer{position:fixed;z-index:1300;right:24px;bottom:24px;width:min(360px,calc(100vw - 48px));display:grid;gap:12px;pointer-events:none}.toast{display:flex;align-items:start;gap:12px;padding:16px;border:1px solid var(--border);border-radius:0;background:var(--surface);color:var(--ink)}.toast.hide{display:none}.toast-title{font-weight:700;font-size:var(--type-small)}.toast-body{overflow-wrap:anywhere}@media(max-width:760px){.modal-overlay,.screenshot-modal-overlay{padding:12px}.modal-card{padding:20px;max-height:calc(100dvh - 24px)}.case-study-grid{grid-template-columns:1fr}.resume-modal-card{height:calc(100dvh - 24px)}.resume-modal-header{padding-right:44px}.studio-contact-card{padding:24px 20px 20px}.resume-modal-actions .modal-close{position:absolute}.btn-sm{padding-inline:8px;font-size:var(--type-small)}.carousel-slide-chip .chip-label-text{display:none}.screenshot-modal-content{max-height:calc(100dvh - 24px);padding-inline:12px}.cmd-palette-backdrop{padding:10dvh 12px 12px}.cmd-palette-card{max-height:82dvh}.cmd-item-group,.cmd-footer-brand{display:none}#toastLayer{right:16px;bottom:16px;width:calc(100vw - 32px)}}.studio-system>main{animation:studio-page-enter var(--motion-short) var(--ease-precise) both}@keyframes studio-page-enter{0%{opacity:.9}to{opacity:1}}@media(prefers-reduced-motion:no-preference)and (hover:hover)and (pointer:fine){.studio-project,.studio-nav-links :is(a,button),.studio-action,.studio-text-action,.studio-icon-button,.studio-hero-socials :is(a,button),.studio-footer-links :is(a,button),.studio-photo-controls button,.gear-photo-nav-btn,.gear-photo-dot,.gear-title-link,.carousel-arrow,.carousel-tab,.carousel-slide-chip,.modal-close,.screenshot-modal-close,.code-link-btn,.cmd-palette-item,.gear-photo-zoom-hint{transition:transform var(--motion-short) var(--ease-precise),background-color var(--motion-short) var(--ease-precise),color var(--motion-short) var(--ease-precise),border-color var(--motion-short) var(--ease-precise)}.studio-project:hover{transform:translateY(-2px)}.studio-nav-links :is(a,button):hover,.studio-action:hover,.studio-text-action:hover,.studio-icon-button:hover,.studio-hero-socials :is(a,button):hover,.studio-footer-links :is(a,button):hover,.studio-photo-controls button:hover,.gear-photo-nav-btn:hover,.gear-photo-dot:hover,.gear-title-link:hover,.carousel-arrow:hover,.carousel-tab:hover,.carousel-slide-chip:hover,.modal-close:hover,.screenshot-modal-close:hover,.code-link-btn:hover,.cmd-palette-item:hover,.studio-gear-zoom:hover .gear-photo-zoom-hint{transform:translateY(-1px)}.carousel-arrow:hover{transform:translateY(calc(-50% - 1px))}}.studio-project:active,.studio-nav-links :is(a,button):active,.studio-action:active,.studio-text-action:active,.studio-icon-button:active,.studio-hero-socials :is(a,button):active,.studio-footer-links :is(a,button):active,.studio-photo-controls button:active,.gear-photo-nav-btn:active,.gear-photo-dot:active,.gear-title-link:active,.carousel-arrow:active,.carousel-tab:active,.carousel-slide-chip:active,.modal-close:active,.screenshot-modal-close:active,.code-link-btn:active,.cmd-palette-item:active{transform:scale(.985)}.carousel-arrow:active{transform:translateY(-50%) scale(.985)}@media(prefers-reduced-motion:reduce){.studio-system>main{animation:none}.studio-project:active,.studio-nav-links :is(a,button):active,.studio-action:active,.studio-text-action:active,.studio-icon-button:active,.studio-hero-socials :is(a,button):active,.studio-footer-links :is(a,button):active,.studio-photo-controls button:active,.gear-photo-nav-btn:active,.gear-photo-dot:active,.gear-title-link:active,.carousel-arrow:active,.carousel-tab:active,.carousel-slide-chip:active,.modal-close:active,.screenshot-modal-close:active,.code-link-btn:active,.cmd-palette-item:active{transform:none}.carousel-arrow:active{transform:translateY(-50%)}}#root{min-height:100vh;min-height:100svh}.immersive-portfolio-shell{position:relative;width:100vw;height:100vh;height:100svh;min-height:560px;overflow:hidden;color:var(--ink);background:var(--paper);isolation:isolate}.desk-scene-stage,.desk-scene-stage>div,.desk-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.desk-scene-stage{z-index:0}.desk-canvas{display:block;z-index:0}.desk-projected-html{pointer-events:auto!important;will-change:transform}.desk-projected-snapshot{opacity:0}.desk-projection-frame{position:relative;width:1280px;height:760px;overflow:hidden;contain:strict;border:5px solid var(--desk-object-dark);border-radius:0;background:var(--paper);color:var(--ink)}:is(.desktop-workspace-screen,.desktop-workspace-preview){width:1270px;height:750px;min-height:0;overflow:hidden;border-radius:0}.desk-projection-frame :is(.desktop-workspace-screen,.desktop-workspace-preview) :is(a,button,input,select,textarea,[role=button],[role=option],[tabindex]){min-width:48px;min-height:48px}.desk-welcome{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none}.desk-welcome-copy{position:absolute;left:clamp(20px,5vw,72px);top:clamp(20px,4vh,48px);width:min(360px,calc(100vw - 40px));padding:14px 16px;border:1px solid var(--border);border-radius:var(--radius-shell);background:var(--surface);pointer-events:auto}.desktop-eyebrow{margin:0 0 8px;color:var(--muted);font:600 13px/1.35 var(--font-body);letter-spacing:.09em;text-transform:uppercase}.desk-welcome-copy h1{color:var(--ink);font:600 22px/1.15 var(--font-display);letter-spacing:-.035em}@media(max-width:1279px){.desk-welcome-copy{top:14px}}.desk-welcome-actions,.desk-welcome-toolbar,.desktop-action-row,.desktop-social-links{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.desk-welcome-actions{margin-top:12px}.desk-welcome-resume{margin:4px 0 -8px -10px}.desk-icon-button{width:44px;padding:0}.desk-welcome-toolbar{position:absolute;top:16px;right:20px;pointer-events:auto}.desk-scene-hint{position:absolute;right:24px;bottom:22px;padding:4px 8px;border:1px solid var(--border);background:var(--surface);color:var(--muted);font-size:13px;text-align:right}.desk-text-action{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:8px 10px;border-radius:var(--radius-control);color:var(--ink);font-size:14px;font-weight:600}.desk-text-action:hover{background:var(--surface-soft)}.desk-loading{position:absolute;z-index:5;top:0;right:0;bottom:0;left:0;display:grid;align-content:center;justify-items:center;gap:10px;padding:24px;background:var(--paper);color:var(--ink);text-align:center}.desk-loading-mark,.desktop-brand-mark{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border:1px solid var(--border);border-radius:0;background:var(--surface-soft);color:var(--ink);font:600 12px/1 var(--font-display);letter-spacing:-.04em}.desk-loading-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.desktop-fallback-note{position:absolute;z-index:12;top:66px;left:50%;max-width:calc(100% - 24px);padding:8px 12px;transform:translate(-50%);border:1px solid var(--border);border-radius:var(--radius-control);background:var(--surface);color:var(--muted);font-size:13px}.desktop-workspace{position:relative;width:100%;height:100%;min-height:100%;overflow:hidden;background:var(--paper);color:var(--ink);font:400 14px/1.5 var(--font-body)}.desktop-workspace-expanded,.desktop-workspace-workspace{height:100vh;height:100svh;min-height:560px}.desktop-menubar{position:absolute;z-index:20;inset:0 0 auto;display:flex;align-items:center;gap:8px;height:60px;padding:6px 12px;border-bottom:1px solid var(--border);background:var(--surface)}.desktop-brand{display:inline-flex;align-items:center;gap:8px;min-width:44px;min-height:44px;padding:3px 8px 3px 3px;border:0;background:transparent;color:var(--ink);font-size:14px;font-weight:600;white-space:nowrap}.desktop-brand-mark{flex-basis:36px;width:36px;height:36px;border-radius:0}.desktop-menubar-actions{display:flex;align-items:center;gap:6px;margin-left:auto}.desktop-toolbar-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:44px;min-height:44px;padding:8px 12px;border:1px solid var(--border);border-radius:var(--radius-control);background:var(--surface);color:var(--ink);font-size:13px;font-weight:600;white-space:nowrap}.desktop-toolbar-button:hover{background:var(--surface-soft)}.desktop-toolbar-button kbd{padding:2px 5px;border:1px solid var(--border);border-radius:0;color:var(--muted);font:500 11px/1.2 var(--font-body)}.desktop-launcher{position:absolute;z-index:16;inset:68px auto 72px 10px;display:grid;align-content:start;grid-template-columns:1fr;grid-auto-rows:minmax(60px,auto);gap:3px;width:140px;padding:2px;overflow:auto}.desktop-icon{display:flex;align-items:center;gap:10px;width:100%;min-width:44px;min-height:54px;padding:5px 7px;border:1px solid transparent;border-radius:var(--radius-control);background:transparent;color:var(--ink);text-align:left}.desktop-icon:hover,.desktop-icon:focus-visible{border-color:var(--border);background:var(--surface)}.desktop-icon-glyph{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border:1px solid var(--border);border-radius:0;background:var(--surface-soft);color:var(--accent);font:600 17px/1 var(--font-display)}.desktop-icon-label{min-width:0;color:var(--ink);font-size:13px;line-height:1.2;overflow-wrap:normal;-webkit-hyphens:manual;hyphens:manual}.desktop-window-area{position:absolute;top:68px;right:12px;bottom:72px;left:158px;overflow:hidden}.desktop-window{position:absolute;z-index:1;min-width:330px;min-height:300px;overflow:hidden;border:1px solid var(--border);border-radius:0;background:var(--surface);color:var(--ink)}.desktop-window.is-active{z-index:8;border-color:var(--muted)}.desktop-window.is-maximized{top:0!important;right:0!important;bottom:0!important;left:0!important;width:100%!important;height:100%!important}.desktop-window-titlebar{position:absolute;z-index:12;inset:0 0 auto;display:flex;align-items:center;min-height:54px;padding-left:12px;border-bottom:1px solid var(--border);background:var(--surface);touch-action:none;-webkit-user-select:none;user-select:none}.desktop-window-titlebar h2{display:flex;align-items:center;gap:8px;min-width:50px;min-height:44px;margin:0;color:var(--ink);font:600 14px/1.2 var(--font-display);white-space:nowrap}.desktop-window-glyph{color:var(--accent);font:600 16px/1 var(--font-display)}.desktop-window-controls{display:flex;align-items:center;gap:0;margin-left:auto}.desktop-window-controls button{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;padding:0;border:0;border-radius:0;background:transparent;color:var(--ink);font:500 18px/1 var(--font-body)}.desktop-window-controls button:hover{background:var(--surface-soft)}.desktop-window-keyboard-help{position:absolute;z-index:14;top:56px;right:8px;padding:8px 12px;border:1px solid var(--border);border-radius:var(--radius-control);background:var(--surface);color:var(--ink);font-size:13px}.desktop-app-scroll{position:absolute;top:54px;right:0;bottom:0;left:0;overflow:auto;overscroll-behavior:contain;background:var(--paper);color:var(--ink)}.desktop-window-resize-handle{position:absolute;z-index:15;right:0;bottom:0;display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:0;background:var(--surface);color:var(--muted);touch-action:none;cursor:nwse-resize}.desktop-window-resize-handle:hover{color:var(--ink)}.desktop-window-resize-handle:active{background:var(--surface-soft)}.desktop-taskbar{position:absolute;z-index:20;inset:auto 0 0;display:flex;align-items:center;justify-content:space-between;gap:8px;height:64px;padding:7px 12px;border-top:1px solid var(--border);background:var(--surface)}.desktop-taskbar-apps,.desktop-taskbar-tools{display:flex;align-items:center;gap:4px;min-width:0}.desktop-taskbar-apps{overflow:auto;scrollbar-width:none}.desktop-taskbar-apps::-webkit-scrollbar{display:none}.desktop-taskbar-item,.desktop-taskbar-home{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:44px;min-height:44px;padding:6px 9px;border:1px solid transparent;border-radius:var(--radius-control);background:transparent;color:var(--ink);font-size:12px;white-space:nowrap}.desktop-taskbar-item>span:first-child{color:var(--accent);font:600 16px/1 var(--font-display)}.desktop-taskbar-item:hover,.desktop-taskbar-item.is-active,.desktop-taskbar-home:hover{border-color:var(--border);background:var(--surface-soft)}.desktop-taskbar-home{border-color:var(--border);font-weight:600}.desktop-taskbar-clock{padding:0 5px;color:var(--muted);font-size:12px;white-space:nowrap}.desktop-empty-state{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;align-content:center;justify-items:center;gap:10px;padding:24px;text-align:center}.desktop-empty-state h1{font:600 28px/1.2 var(--font-display)}.desktop-empty-state>p:last-child{color:var(--muted)}.desktop-about-app{min-height:100%}.desktop-about-app .studio-hero{padding-top:24px}.desktop-about-app .studio-profile-row{gap:12px}.desktop-about-app .studio-profile-photo{width:72px;height:72px}.desktop-about-app .studio-hero-name{max-width:20ch}.desktop-about-app .studio-about{padding-bottom:30px}.desktop-document-app,.desktop-contact-app{max-width:920px;margin-inline:auto;padding:clamp(20px,4vw,44px)}.desktop-app-intro{padding-bottom:22px;border-bottom:1px solid var(--border)}.desktop-app-intro h1,.desktop-contact-profile h1{color:var(--ink);font:600 clamp(24px,2.5vw,34px)/1.15 var(--font-display);letter-spacing:-.03em}.desktop-app-intro>p:not(.desktop-eyebrow){margin-top:4px;color:var(--muted)}.desktop-action-row{margin-top:16px}.desktop-resume-preview{height:min(65vh,720px);min-height:400px;margin-top:20px;border:1px solid var(--border);border-radius:var(--radius-frame);overflow:hidden;background:var(--surface)}.desktop-resume-preview iframe{display:block;width:100%;height:100%;border:0;background:#fff}.desktop-resume-help{margin-top:10px;color:var(--muted);font-size:13px}.desktop-contact-app{display:grid;justify-items:start;gap:18px}.desktop-contact-profile{display:flex;align-items:center;gap:14px}.desktop-contact-profile img{width:72px;height:72px;border:1px solid var(--border);border-radius:50%;object-fit:cover}.desktop-contact-profile p{color:var(--muted);font-size:14px}.desktop-copy-email{justify-self:start}.desktop-social-links{margin-top:4px}.desktop-app-scroll .studio-container{width:min(100% - 40px,var(--content-width))}.desktop-app-scroll .studio-project-detail-preview img{max-height:360px;object-fit:contain}.desktop-app-scroll .studio-project-detail{scroll-margin-top:12px}.desktop-app-scroll :is(.studio-project-page,.studio-after-hours,.studio-hero){padding-top:24px}.desktop-app-scroll .studio-archive-section{padding-top:18px}.desktop-app-scroll .studio-archive-header h1,.desktop-app-scroll .studio-project-page-header h1{font:600 clamp(26px,3vw,34px)/1.15 var(--font-display)}@media(max-width:1099px),(pointer:coarse){.desktop-launcher{display:none}.desktop-launcher.is-open{top:66px;right:8px;bottom:70px;left:8px;display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));grid-auto-rows:minmax(68px,auto);width:auto;padding:10px;border:1px solid var(--border);border-radius:var(--radius-shell);background:var(--surface)}.desktop-icon{flex-direction:column;justify-content:center;gap:4px;min-height:64px;padding:5px;text-align:center}.desktop-icon-label{max-width:100%;font-size:12px}.desktop-window-area{top:60px;right:8px;bottom:68px;left:8px}.desktop-window{left:0!important;top:0!important;width:100%!important;height:100%!important;min-width:0;min-height:0;border-radius:0}.desktop-window:not(.is-active){display:none}.desktop-window.is-active{z-index:8}.desktop-window.is-maximized{top:0!important;right:0!important;bottom:0!important;left:0!important}.desktop-window-controls button[aria-label^=Move],.desktop-window-controls button[aria-label^=Resize],.desktop-window-controls button[aria-label^=Maximize],.desktop-window-controls button[aria-label^=Restore],.desktop-window-resize-handle{display:none}.desktop-menubar{gap:4px;padding-inline:7px}.desktop-menubar-actions{gap:4px}.desktop-toolbar-button{padding-inline:9px}.desktop-taskbar{padding-inline:6px}.desktop-taskbar-clock{display:none}.desktop-taskbar-item{padding-inline:8px}.desktop-taskbar-label{font-size:12px}.desktop-about-app .studio-profile-photo{width:64px;height:64px}}@media(max-width:560px){.immersive-portfolio-shell{min-height:520px}.desktop-brand>span:last-child{display:none}.desktop-command-button kbd{display:none}.desktop-menubar-actions .desktop-toolbar-button{padding-inline:8px}.desktop-window-titlebar{padding-left:8px}.desktop-window-titlebar h2{flex:1 1 auto;overflow:hidden;font-size:13px;text-overflow:ellipsis}.desktop-window-controls{flex:0 0 auto}.desktop-window-controls button{flex-basis:44px;width:44px;min-width:44px}.desktop-window-area{top:60px;right:5px;bottom:66px;left:5px}.desktop-taskbar{height:62px;padding:6px 4px}.desktop-taskbar-item{min-width:44px;padding-inline:7px}.desktop-taskbar-home{padding-inline:7px}.desk-welcome-toolbar{top:8px;right:8px}.desk-scene-hint{right:12px;bottom:8px;max-width:38%;font-size:11px}.desktop-action-row>*{width:100%}.desktop-resume-preview{min-height:300px;height:58vh}.desktop-contact-app{padding:20px}.desktop-contact-profile img{width:60px;height:60px}.desktop-app-scroll .studio-container{width:100%;padding-inline:12px}.desktop-app-scroll :is(.studio-project-page,.studio-after-hours,.studio-hero){padding-top:16px}.desktop-app-scroll .studio-project-detail-list>.studio-project-detail{padding:12px 12px 16px}.desktop-taskbar-item{flex:1 1 0;min-width:0;overflow:hidden}.desktop-taskbar-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}.desktop-app-scroll .studio-project-detail.is-compact>.studio-project-detail-preview{margin-top:0;margin-bottom:20px}.desktop-app-scroll .studio-project-detail.is-compact .studio-project-detail-content{margin-top:20px;gap:20px}.project-quick-read{display:grid;gap:16px}.project-quick-read dt{margin-bottom:4px;font-weight:700}.project-quick-read dd{margin:0;color:var(--muted);line-height:1.6}.portfolio-build-notes{margin-top:36px;padding-top:24px;border-top:2px groove var(--retro-etch)}.portfolio-build-notes>h2{margin:12px 0;font-size:var(--type-section)}.portfolio-build-notes p{line-height:1.6}.portfolio-engineering-details{margin-top:20px;border:2px groove var(--retro-etch)}.portfolio-engineering-details>summary{padding:12px;min-height:44px;cursor:pointer;font-weight:700}.portfolio-engineering-grid{display:grid;gap:24px;padding:12px 16px 20px}.portfolio-engineering-grid h3{margin-bottom:8px;font-size:var(--type-card-title)}.portfolio-engineering-grid p{color:var(--muted)}.mobile-workbench{display:none}@media(max-width:1099px),(pointer:coarse){.mobile-workbench{display:block;margin:12px;border:2px inset var(--retro-etch)}.mobile-workbench-heading{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 12px;padding:8px;font-size:var(--type-label);background:var(--retro-title);color:var(--retro-title-ink)}.mobile-workbench-heading>span:first-child{font-weight:700}.mobile-workbench>svg{display:block;width:100%;height:auto;max-height:140px;background:var(--desk-wall)}.mobile-workbench-shortcuts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:4px;background:var(--retro-chrome)}.mobile-workbench-shortcuts button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:0;min-height:64px;padding:6px 2px;font-size:var(--type-label)}.mobile-workbench-shortcuts svg{width:22px;height:22px}}.portfolio-engineering-details>summary:focus-visible{outline:3px solid var(--ink);outline-offset:3px}.desktop-app-scroll .compact-projects .studio-project-page-header{margin-bottom:24px}.desktop-app-scroll .compact-projects .studio-project-page-header h1{margin-top:0}@media(min-width:1100px)and (pointer:fine){.desktop-app-scroll .compact-projects .studio-container{width:min(100% - 40px,var(--content-width-wide))}}.desktop-app-scroll .studio-project-detail.is-compact .studio-project-detail-preview img{max-height:420px}@media(max-width:760px){.desktop-app-scroll .studio-project-detail.is-compact .studio-project-detail-preview img{max-height:180px}.desktop-app-scroll .studio-project-detail.is-compact figcaption{padding:8px}}.desktop-window-key-control:not(:focus-visible){position:absolute;left:-9999px}.retro-desktop-content{position:absolute;top:0;right:0;bottom:0;left:0}.desktop-workspace{background:var(--retro-wallpaper-0);font-family:var(--font-pixel)}.desktop-workspace[data-wallpaper="1"]{background:var(--retro-wallpaper-1)}.desktop-workspace[data-wallpaper="2"]{background:var(--retro-wallpaper-2)}.desktop-menubar,.desktop-taskbar,.desktop-window,.retro-start-menu{background:var(--retro-chrome);color:var(--retro-ink);border-radius:0;border:2px solid;border-color:var(--retro-highlight) var(--retro-edge) var(--retro-edge) var(--retro-highlight)}.desktop-menubar,.desktop-taskbar{padding:6px 8px}.desktop-brand,.desktop-brand-mark{color:var(--retro-ink);border-radius:0}.desktop-brand-mark{border:1px solid var(--retro-edge);background:var(--retro-highlight);color:var(--retro-edge);font-family:var(--font-pixel)}.desktop-toolbar-button,.desktop-taskbar-item,.desktop-taskbar-home,.retro-extra-app button,.retro-terminal-app button,.retro-mail-form button,.retro-start-items>button,.retro-monitor-off button,.retro-monitor-off a,.studio-action,.studio-icon-button,.btn,.code-link-btn,.screenshot-product-btn,.modal-close,.screenshot-modal-close,.carousel-arrow{min-width:44px;min-height:44px;padding:8px 12px;border:2px solid;border-color:var(--retro-highlight) var(--retro-edge) var(--retro-edge) var(--retro-highlight);border-radius:0;background:var(--retro-chrome);color:var(--retro-ink);font:600 13px/1.3 var(--font-pixel)}.desktop-toolbar-button:hover,.desktop-taskbar-item:hover,.desktop-taskbar-home:hover,.retro-start-items>button:hover,:is(.studio-action,.studio-icon-button,.btn,.code-link-btn,.screenshot-product-btn,.modal-close,.screenshot-modal-close,.carousel-arrow):hover{background:var(--retro-highlight);color:var(--retro-edge);border-color:var(--retro-highlight) var(--retro-edge) var(--retro-edge) var(--retro-highlight)}.desktop-toolbar-button:active,.desktop-taskbar-item.is-active,.desktop-taskbar-home[aria-expanded=true],:is(.studio-action,.studio-icon-button,.btn,.code-link-btn,.screenshot-product-btn,.modal-close,.screenshot-modal-close,.carousel-arrow):active{border-color:var(--retro-edge) var(--retro-highlight) var(--retro-highlight) var(--retro-edge)}:is(.studio-action,.studio-text-action,.studio-icon-button,.btn,.code-link-btn,.screenshot-product-btn,.cmd-palette-item,.studio-project):is(:hover,:active){transform:none}.carousel-arrow:is(:hover,:active){transform:translateY(-50%)}:is(.studio-text-action,.desk-text-action):hover{background:transparent;text-decoration:underline dotted}.desktop-toolbar-button kbd{border-radius:0;color:inherit}.retro-icon{flex:0 0 auto;shape-rendering:crispEdges}.desktop-launcher{width:172px;grid-template-columns:repeat(2,1fr);grid-auto-rows:minmax(74px,auto);gap:8px 2px}.desktop-launcher[hidden]{display:none}:is(.desktop-workspace-screen,.desktop-workspace-preview) .desktop-launcher{grid-auto-rows:minmax(68px,auto);gap:4px 2px}:is(.desktop-workspace-screen,.desktop-workspace-preview) .desktop-icon{min-height:68px;gap:3px;padding:2px 4px}.desktop-icon{flex-direction:column;justify-content:center;text-align:center;gap:5px;padding:4px;border-radius:0;min-height:74px}.desktop-icon:hover,.desktop-icon:focus-visible{background:var(--retro-title);border-color:var(--retro-title-ink)}.desktop-icon-glyph{width:32px;height:32px;flex-basis:32px;border:0;border-radius:0;background:transparent;color:var(--retro-icon-ink)}.desktop-icon-label{color:var(--retro-title-ink);font-family:var(--font-pixel);font-size:13px}.desktop-launcher .desktop-icon-label{font-size:12px}.desktop-window-area{left:190px}.desktop-window.is-active{border-color:var(--retro-highlight) var(--retro-edge) var(--retro-edge) var(--retro-highlight)}.desktop-window-titlebar{min-height:54px;padding:3px 3px 3px 8px;background:var(--retro-inactive-title);border:0;color:var(--retro-title-ink)}.desktop-window.is-active .desktop-window-titlebar{background:var(--retro-title)}.desktop-window-titlebar h2{flex:1;min-width:44px;overflow:hidden;text-overflow:ellipsis;color:var(--retro-title-ink);font:700 14px/1.3 var(--font-pixel)}.desktop-window-glyph{color:inherit}.desktop-window-glyph .retro-icon{width:19px;height:19px}.desktop-window-controls{gap:3px}.desktop-window-controls button{border-radius:0;border:2px solid;border-color:var(--retro-highlight) var(--retro-edge) var(--retro-edge) var(--retro-highlight);background:var(--retro-chrome);color:var(--retro-ink)}.desktop-app-scroll{top:54px;font-family:var(--font-body)}.desktop-window-resize-handle{place-items:end;padding:4px;border-radius:0;background:transparent;color:var(--ink)}.desktop-window-resize-handle:is(:hover,:active,:focus-visible){background:var(--retro-chrome);color:var(--retro-ink)}.desktop-taskbar-home{flex:0 0 auto}.desktop-taskbar-apps{flex:1;min-width:0;overflow-x:auto}.desktop-taskbar-item{flex:0 1 160px;gap:6px;overflow:hidden}.desktop-taskbar-label{min-width:0;overflow:hidden;text-overflow:ellipsis}.desktop-taskbar-item .retro-icon{width:20px;height:20px}.desktop-taskbar-item.desktop-taskbar-sound{flex:0 0 44px;width:44px;padding:0}.desktop-taskbar-clock{color:var(--retro-ink);font-family:var(--font-pixel)}.retro-start-menu{position:absolute;z-index:30;left:8px;bottom:70px;width:320px;max-width:calc(100% - 16px);max-height:calc(100% - 140px);display:flex;overflow:hidden}.retro-start-banner{flex:0 0 35px;background:var(--retro-title);color:var(--retro-title-ink);writing-mode:vertical-rl;transform:rotate(180deg);padding:12px 6px;font:700 18px/1.3 var(--font-pixel)}.retro-start-items{flex:1;min-width:0;overflow-y:auto;padding:4px}.retro-start-items>p{margin:8px 4px 4px;font:700 13px/1.4 var(--font-pixel);border-bottom:1px solid var(--retro-edge)}.retro-start-items>button,.retro-start-items .desktop-icon{display:flex;flex-direction:row;justify-content:flex-start;gap:10px;width:100%;min-height:44px;padding:5px 8px;text-align:left}.retro-start-items .desktop-icon-glyph,.retro-start-items .desktop-icon-label{color:var(--retro-ink)}.retro-start-items .desktop-icon:hover :is(.desktop-icon-label,.desktop-icon-glyph){color:var(--retro-title-ink)}.retro-start-items>button[aria-pressed=true]{border-color:var(--retro-edge) var(--retro-highlight) var(--retro-highlight) var(--retro-edge)}.retro-wallpaper-dither{position:absolute;z-index:0;top:0;right:0;bottom:0;left:0;pointer-events:none}.retro-scanlines{position:absolute;z-index:35;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.16}.retro-crt-vignette{position:absolute;z-index:36;top:0;right:0;bottom:0;left:0;pointer-events:none;border-radius:28px/22px;box-shadow:inset 0 0 0 3px var(--retro-crt-bezel),inset 0 0 90px var(--retro-crt-shade)}.desktop-workspace[data-crt] :is(.desktop-menubar,.desktop-taskbar,.desktop-window-titlebar,.desktop-launcher,.retro-start-menu){text-shadow:0 0 2px var(--retro-phosphor)}.desk-tooltip{display:block;padding:3px 7px;border:1px solid var(--retro-tooltip-ink);background:var(--retro-tooltip-bg);color:var(--retro-tooltip-ink);font:400 13px/1.3 var(--font-body);white-space:nowrap}.desk-projection-overview{pointer-events:none!important}.retro-monitor-off{position:absolute;z-index:60;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:24px;background:var(--retro-boot-bg);color:var(--retro-boot-ink)}.retro-monitor-off p{text-align:center}.desk-welcome-copy,.desk-loading,.toast,.cmd-palette-card,.desktop-fallback-note,.desktop-window-keyboard-help{--ink: var(--retro-ink);--muted: var(--retro-ink);--surface: var(--retro-chrome);--surface-soft: var(--retro-highlight);--border: var(--retro-edge);background:var(--retro-chrome);color:var(--retro-ink);border:2px solid;border-color:var(--retro-highlight) var(--retro-edge) var(--retro-edge) var(--retro-highlight)}.modal-card,.screenshot-modal-content{border:2px solid;border-color:var(--retro-highlight) var(--retro-edge) var(--retro-edge) var(--retro-highlight);box-shadow:inset 0 0 0 4px var(--retro-chrome)}.cmd-palette-input{min-height:44px;border:2px solid;border-color:var(--retro-edge) var(--retro-highlight) var(--retro-highlight) var(--retro-edge);background:var(--paper);color:var(--ink)}.cmd-palette-item.selected{background:var(--retro-title);color:var(--retro-title-ink)}::-webkit-scrollbar{width:16px;height:16px;background:var(--retro-chrome)}::-webkit-scrollbar-thumb{background:var(--retro-chrome);border:2px solid;border-color:var(--retro-highlight) var(--retro-edge) var(--retro-edge) var(--retro-highlight)}::-webkit-scrollbar-corner{background:var(--retro-chrome)}@supports (-moz-appearance: none){*{scrollbar-color:var(--retro-highlight) var(--retro-chrome)}}:is(.desktop-app-scroll,.modal-card){--border: var(--retro-etch)}:is(.desktop-app-scroll,.modal-card) :is(h1,h2,h3,h4){letter-spacing:0;font-weight:700}:is(.desktop-app-scroll,.modal-card) :is(.studio-project-detail,.studio-project-case-item){padding:16px 20px 20px;border:2px groove var(--retro-etch)}.desktop-app-scroll .studio-project-detail-list{gap:20px}:is(.desktop-app-scroll,.modal-card) :is(.studio-project-detail-preview,.studio-project-preview,.gear-media-box,.studio-portrait-frame,.case-study-item,.deck-photo-card){border:2px inset var(--retro-etch)}:is(.desktop-app-scroll,.modal-card) :is(.studio-proof,.tech-pill,.stamp,.modal-badge,.studio-stack-item,.studio-project-detail-stack li,.studio-project-preview-label){border:2px outset var(--retro-etch);background:var(--retro-chrome);color:var(--retro-ink)}.retro-profile-facts{display:grid;gap:16px;font-size:var(--type-body)}.retro-profile-facts dt{font-weight:600}.retro-profile-facts dd{margin:0;color:var(--muted)}.retro-extra-app{max-width:780px;margin:0 auto;padding:24px;font:400 16px/1.6 var(--font-body)}.retro-extra-app.retro-bughunter{max-width:1200px}.retro-extra-app h1{margin:0 0 12px;font:600 32px/1.2 var(--font-pixel)}.retro-extra-app p{margin:0 0 16px}.retro-extra-app a,.retro-mail-form a{display:inline-flex;align-items:center;min-height:44px;padding:8px 2px;color:var(--accent);text-decoration:underline;overflow-wrap:anywhere}.retro-word-grid{width:100%;max-width:300px;display:grid;gap:6px;margin:16px auto}.retro-word-row{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.retro-word-cell{position:relative;display:grid;place-items:center;aspect-ratio:1;border:2px solid var(--border);font:600 24px/1 var(--font-pixel)}.retro-word-cell.correct{background:var(--word-correct);color:var(--word-ink)}.retro-word-cell.present{background:var(--word-present);color:var(--word-ink)}.retro-word-cell.absent{background:var(--word-absent);color:var(--word-ink)}.retro-word-cell:is(.correct,.present,.absent):after{position:absolute;bottom:2px;right:3px;font:600 13px/1 var(--font-pixel)}.retro-word-cell.correct:after{content:"✓"}.retro-word-cell.present:after{content:"↔"}.retro-word-cell.absent:after{content:"×"}.retro-game-message{min-height:26px}.retro-word-game{position:relative}.retro-word-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.retro-word-capture{position:absolute;width:1px;height:1px;padding:0;border:0;opacity:0;pointer-events:none}.retro-word-grid{cursor:text}.retro-terminal-app input,.retro-mail-form input,.retro-mail-form textarea{display:block;width:100%;min-height:44px;padding:10px;border:2px solid;border-color:var(--retro-edge) var(--retro-highlight) var(--retro-highlight) var(--retro-edge);border-radius:0;background:var(--paper);color:var(--ink);font:400 16px/1.4 var(--font-body)}.retro-word-legend{font-size:13px}.retro-bug-arena{position:relative;width:fit-content;max-width:100%;border:2px solid;border-color:var(--retro-edge) var(--retro-highlight) var(--retro-highlight) var(--retro-edge);margin-bottom:12px}.retro-bug-arena canvas{display:block;max-width:100%;height:auto;aspect-ratio:1.587;background:var(--game-ceiling);touch-action:manipulation;cursor:crosshair}.retro-bug-hud{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;max-width:100%;margin-bottom:8px;padding:6px 10px;border:2px solid;border-color:var(--retro-edge) var(--retro-highlight) var(--retro-highlight) var(--retro-edge);background:var(--game-ceiling);color:var(--game-ink);font:400 20px/1 var(--font-pixel)}.retro-bug-hp{display:inline-flex;align-items:center;gap:8px;flex:1 1 140px}.retro-bug-hp-track{flex:1;height:12px;border:2px solid var(--game-ink)}.retro-bug-hp-fill{display:block;height:100%;background:var(--game-crosshair)}.retro-bug-hp-fill.is-low{background:var(--game-hurt)}.retro-extra-app .retro-bug-status{margin-bottom:8px}.retro-extra-app .retro-bug-banner{position:absolute;left:50%;top:42%;margin:0;padding:8px 14px;transform:translate(-50%,-50%);border:2px solid var(--game-ink);background:var(--game-ceiling);color:var(--game-ink);font:400 28px/1.1 var(--font-pixel);text-align:center;pointer-events:none}.retro-extra-app .retro-bug-banner.is-top{top:10px;width:max-content;max-width:calc(100% - 20px);transform:translate(-50%);font-size:18px}.retro-extra-app .retro-bug-banner.is-over{display:grid;justify-items:center;gap:6px;pointer-events:auto}.retro-extra-app .retro-bug-banner.is-over p{margin:0}.retro-bug-touch{display:none}@media(pointer:coarse){.retro-bug-touch{display:grid;grid-template-columns:repeat(4,56px) 1fr;gap:8px;max-width:100%;margin-bottom:16px;touch-action:none;user-select:none;-webkit-user-select:none}.retro-extra-app .retro-bug-touch button{min-height:56px;font:400 22px/1 var(--font-pixel)}}@media(prefers-reduced-motion:no-preference){.retro-bug-hp-fill{transition:width .12s linear}}.retro-terminal-app{min-height:100%;padding:20px;background:var(--retro-terminal-bg);color:var(--retro-terminal-ink);font:400 16px/1.6 monospace;overflow-wrap:anywhere}.retro-terminal-app p{margin:0 0 8px}.retro-terminal-entry{margin:20px 0}.retro-terminal-app form{display:flex;align-items:end;flex-wrap:wrap;gap:8px;margin-top:24px}.retro-terminal-app label{flex:1;min-width:140px}.retro-terminal-app input{font-family:monospace}.retro-credits ul{padding-left:24px}.retro-sweeper-levels{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.retro-extra-app .retro-sweeper-levels button[aria-pressed=true]{border-color:var(--retro-edge) var(--retro-highlight) var(--retro-highlight) var(--retro-edge);background:var(--retro-highlight);color:var(--retro-edge)}.retro-extra-app .retro-sweeper-levels button:disabled{opacity:.55;cursor:not-allowed}.retro-sweeper-size{font-size:13px}.retro-sweeper-frame{width:max-content;max-width:100%;padding:6px;border:3px solid;border-color:var(--retro-highlight) var(--retro-edge) var(--retro-edge) var(--retro-highlight);background:var(--retro-chrome)}.retro-sweeper-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px;padding:4px;border:2px solid;border-color:var(--retro-edge) var(--retro-highlight) var(--retro-highlight) var(--retro-edge)}.retro-sweeper-lcd{min-width:64px;padding:2px 6px;border:2px solid;border-color:var(--retro-edge) var(--retro-highlight) var(--retro-highlight) var(--retro-edge);background:var(--sweep-lcd-bg);color:var(--sweep-lcd-ink);font:400 34px/1 var(--font-pixel);letter-spacing:2px;text-align:right}.retro-extra-app .retro-sweeper-face{min-width:52px;font:400 22px/1 var(--font-pixel)}.retro-sweeper-board{display:grid;width:max-content;max-width:100%;border:3px solid;border-color:var(--retro-edge) var(--retro-highlight) var(--retro-highlight) var(--retro-edge)}.retro-extra-app .retro-sweeper-cell{min-width:44px;width:44px;height:44px;min-height:44px;padding:0;border:3px solid;border-color:var(--retro-highlight) var(--retro-edge) var(--retro-edge) var(--retro-highlight);background:var(--sweep-tile);color:var(--sweep-3);font:400 26px/1 var(--font-pixel)}.retro-extra-app .retro-sweeper-cell:hover{background:var(--sweep-tile);color:var(--sweep-3);border-color:var(--retro-highlight) var(--retro-edge) var(--retro-edge) var(--retro-highlight)}.retro-extra-app .retro-sweeper-cell.is-open,.retro-extra-app .retro-sweeper-cell.is-open:hover{border:1px solid var(--retro-etch);background:var(--sweep-open);color:var(--ink)}.retro-extra-app .retro-sweeper-cell.is-bug{color:var(--sweep-7)}.retro-extra-app .retro-sweeper-cell.is-exploded,.retro-extra-app .retro-sweeper-cell.is-exploded:hover{background:var(--sweep-exploded);color:var(--sweep-lcd-bg)}.retro-extra-app .retro-sweeper-cell.is-wrong{color:var(--sweep-exploded)}.retro-extra-app .retro-sweeper-cell:is(.n1,.n1:hover){color:var(--sweep-1)}.retro-extra-app .retro-sweeper-cell:is(.n2,.n2:hover){color:var(--sweep-2)}.retro-extra-app .retro-sweeper-cell:is(.n3,.n3:hover){color:var(--sweep-3)}.retro-extra-app .retro-sweeper-cell:is(.n4,.n4:hover){color:var(--sweep-4)}.retro-extra-app .retro-sweeper-cell:is(.n5,.n5:hover){color:var(--sweep-5)}.retro-extra-app .retro-sweeper-cell:is(.n6,.n6:hover){color:var(--sweep-6)}.retro-extra-app .retro-sweeper-cell:is(.n7,.n7:hover){color:var(--sweep-7)}.retro-extra-app .retro-sweeper-cell:is(.n8,.n8:hover){color:var(--sweep-8)}.retro-sweeper-footer{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:12px}.retro-sweeper-counter{min-width:120px;padding:8px 10px;border:2px solid;border-color:var(--retro-edge) var(--retro-highlight) var(--retro-highlight) var(--retro-edge);background:var(--paper);color:var(--ink);font:700 14px/1.4 monospace}.retro-sweeper-best{font-size:14px}.retro-achievements-title{margin:24px 0 4px;font-size:20px}.retro-achievement-list{display:grid;gap:8px;padding:0;list-style:none}.retro-achievement-list li{display:flex;gap:10px;padding:8px 10px;border:2px groove var(--retro-etch)}.retro-achievement-list li>span:first-child{font-weight:700}.retro-drive-list{display:grid;gap:8px;padding:0;list-style:none}.retro-drive-list button{display:flex;align-items:center;gap:12px;width:100%;min-height:56px;padding:8px 12px;text-align:left}.retro-drive-list button>span{display:grid;gap:2px}.retro-drive-list button>span>span{font-weight:400}.retro-credits li{margin:0 0 12px}.retro-mail-form{display:grid;gap:16px;width:100%}.retro-mail-form>p{margin:0}.retro-mail-to{overflow-wrap:anywhere;padding-bottom:8px;border-bottom:1px solid var(--border)}.retro-mail-form label{display:grid;gap:6px}.retro-mail-form button{justify-self:start}.retro-mail-form .studio-contact-honeypot{display:none}.retro-mail-status{padding:12px;border:1px solid var(--border)}.retro-mail-status.is-error{border-left:4px solid var(--word-present)}.retro-mail-status.is-success{border-left:4px solid var(--word-correct)}.retro-boot{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100svh;max-width:none;max-height:none;margin:0;padding:clamp(20px,4vw,48px);border:0;background:var(--retro-title);color:var(--retro-title-ink);font:400 16px/1.5 var(--font-body);overflow:auto}.retro-boot[open]{display:flex;flex-direction:column;gap:24px}.retro-boot::backdrop{background:var(--retro-title)}.retro-boot-splash{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;text-align:center}.retro-boot-mark{display:grid;place-items:center;width:72px;height:72px;border:2px solid;border-color:var(--retro-highlight) var(--retro-edge) var(--retro-edge) var(--retro-highlight);background:var(--retro-chrome);color:var(--retro-ink);font:700 28px/1 var(--font-pixel)}.retro-boot h1{margin:0;font:700 clamp(34px,6vw,56px)/1.1 var(--font-pixel)}.retro-boot h1 span{display:block;margin-top:6px;font-size:.4em;font-weight:400;letter-spacing:.08em}.retro-boot p{max-width:65ch;margin:0}.retro-boot-progress{display:flex;gap:2px;width:min(320px,100%);height:22px;margin-top:12px;padding:2px;border:2px solid;border-color:var(--retro-edge) var(--retro-highlight) var(--retro-highlight) var(--retro-edge);background:var(--retro-chrome)}.retro-boot-progress i{flex:1;background:var(--retro-title)}.retro-boot-post{margin:0;color:var(--retro-boot-ink);font:400 14px/1.5 var(--font-pixel);white-space:pre-wrap}.retro-boot-note{font-size:13px}.retro-boot-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.retro-boot button,.retro-boot a{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px 12px;border:2px solid;border-color:var(--retro-highlight) var(--retro-edge) var(--retro-edge) var(--retro-highlight);border-radius:0;background:var(--retro-chrome);color:var(--retro-ink);font:600 13px/1.3 var(--font-pixel);text-decoration:none}.retro-boot :is(button,a):active{border-color:var(--retro-edge) var(--retro-highlight) var(--retro-highlight) var(--retro-edge)}.retro-boot-footer{align-self:flex-end;font-size:13px}@media(prefers-reduced-motion:no-preference){.retro-boot[open] .retro-boot-progress i{animation:retro-block-on 1ms calc(var(--block) * var(--boot-ms, 3s) / 15) both}.retro-boot[open] .retro-boot-post span{animation:retro-block-on 1ms calc(var(--line) * .28s) both}}@keyframes retro-block-on{0%{visibility:hidden}to{visibility:visible}}@media(prefers-reduced-motion:no-preference){.desktop-window{animation:desktop-window-open .2s cubic-bezier(.2,.8,.2,1) both}}@keyframes desktop-window-open{0%{opacity:.35;transform:scale(.85)}to{opacity:1;transform:none}}@media(max-width:1099px),(pointer:coarse){.desktop-launcher,.desktop-launcher.is-open{display:none}.desktop-window-area{left:5px}.desktop-window:not(.is-active){visibility:hidden;pointer-events:none}.retro-start-menu{bottom:66px;max-height:calc(100% - 134px)}.desktop-taskbar-clock{display:none}.desktop-icon{flex-direction:column}.retro-extra-app{padding:20px}.retro-extra-app h1{font-size:26px}.retro-profile-facts{padding:0 20px 24px}.desktop-window-titlebar{padding-left:6px}.desktop-window-titlebar h2{font-size:13px}}@media(max-width:1099px),(pointer:coarse){.immersive-portfolio-shell,.desktop-workspace-workspace,.desktop-workspace-expanded{height:100dvh;min-height:0}.desktop-workspace{--mobile-safe-top: env(safe-area-inset-top, 0px);--mobile-safe-bottom: env(safe-area-inset-bottom, 0px);--mobile-safe-left: env(safe-area-inset-left, 0px);--mobile-safe-right: env(safe-area-inset-right, 0px)}.desktop-menubar{height:calc(52px + var(--mobile-safe-top));padding:calc(2px + var(--mobile-safe-top)) calc(6px + var(--mobile-safe-right)) 2px calc(6px + var(--mobile-safe-left))}.desktop-window-area{inset:calc(52px + var(--mobile-safe-top)) calc(5px + var(--mobile-safe-right)) calc(56px + var(--mobile-safe-bottom)) calc(5px + var(--mobile-safe-left))}.desktop-window-titlebar{height:50px;min-height:50px;padding-block:3px}.desktop-app-scroll{top:50px}.desktop-taskbar{height:calc(56px + var(--mobile-safe-bottom));padding:4px calc(4px + var(--mobile-safe-right)) calc(4px + var(--mobile-safe-bottom)) calc(4px + var(--mobile-safe-left))}.desktop-taskbar-apps{flex:1}.desktop-taskbar-apps .desktop-taskbar-item{flex:0 0 auto;min-width:44px;max-width:160px}.desktop-taskbar-label{max-width:100px}.desktop-taskbar-sound{min-width:44px}.retro-start-menu{left:calc(5px + var(--mobile-safe-left));bottom:calc(60px + var(--mobile-safe-bottom));max-width:calc(100% - 10px - var(--mobile-safe-left) - var(--mobile-safe-right));max-height:calc(100% - 116px - var(--mobile-safe-top) - var(--mobile-safe-bottom))}.desktop-app-scroll{font-size:var(--type-body);line-height:1.6}.desktop-app-scroll h1{font-size:var(--type-mobile-heading);line-height:1.25}.desktop-app-scroll .studio-container{width:min(100%,var(--content-width));padding-inline:12px}.desktop-app-scroll :is(.studio-project-page-header h1,.studio-archive-header h1){font-size:var(--type-mobile-heading)}.desktop-app-scroll :is(.studio-hero,.studio-after-hours,.studio-project-page){padding-top:16px}.desktop-app-scroll .studio-archive-section{padding-top:0}.desktop-app-scroll .studio-profile-row{gap:12px}.desktop-app-scroll .studio-profile-resume{margin-left:0}.desktop-app-scroll .studio-hero-name,.desktop-app-scroll .studio-hero-actions{margin-top:16px}.desktop-app-scroll .studio-hero{padding-bottom:20px}.desktop-app-scroll .studio-about{padding-block:8px 20px}.desktop-app-scroll .studio-about-lead{font-size:var(--type-body);line-height:1.6}.desktop-app-scroll :is(.desktop-contact-app,.desktop-document-app,.retro-extra-app){padding-inline:12px}.desktop-app-scroll .retro-profile-facts{padding-inline:12px}.desktop-app-scroll .studio-project-detail.is-compact .studio-project-detail-preview img{max-height:160px;object-fit:contain}.desktop-app-scroll .studio-project-detail.is-compact>.studio-project-detail-preview{margin-bottom:16px}.desktop-app-scroll .studio-project-detail.is-compact .studio-project-detail-content{margin-top:16px;gap:16px}.desktop-workspace :is(button,a,[role=button]){touch-action:manipulation}.desktop-workspace :is(button,a,[role=button]):focus-visible{outline:3px solid var(--accent);outline-offset:2px}.desktop-workspace :is(.desktop-toolbar-button,.desktop-taskbar-item,.desktop-taskbar-home,.retro-start-items>button,.studio-action):active,.desktop-workspace :is(.desktop-taskbar-item[aria-pressed=true],.desktop-taskbar-home[aria-expanded=true]){border-color:var(--retro-edge) var(--retro-highlight) var(--retro-highlight) var(--retro-edge);background:var(--retro-chrome)}}.desk-loading{background:var(--retro-wallpaper-0);cursor:url(/cursors/hourglass.svg) 11 16,progress}.desk-loading-dialog{width:min(380px,calc(100vw - 32px));border:2px solid;border-color:var(--retro-highlight) var(--retro-edge) var(--retro-edge) var(--retro-highlight);background:var(--retro-chrome);color:var(--retro-ink);text-align:left}.desk-loading-title{display:flex;align-items:center;gap:8px;margin:0;padding:4px 6px;background:var(--retro-title);color:var(--retro-title-ink);font:700 14px/1.3 var(--font-pixel)}.desk-loading-title .desk-loading-mark{flex-basis:22px;width:22px;height:22px;font:700 10px/1 var(--font-pixel)}.desk-loading-body{display:grid;gap:12px;padding:14px;font:400 14px/1.4 var(--font-pixel)}.desk-loading-body p{margin:0}.desk-loading-bar{display:flex;gap:2px;height:22px;padding:2px;border:2px solid;border-color:var(--retro-edge) var(--retro-highlight) var(--retro-highlight) var(--retro-edge);background:var(--paper)}.desk-loading-bar i{flex:1}.desk-loading-bar i.is-lit{background:var(--retro-title)}.desk-loading .desk-loading-actions{justify-content:flex-end}@media(prefers-reduced-motion:no-preference){.desk-loading-bar i.is-next{animation:retro-block-blink .7s steps(1,end) infinite}}@keyframes retro-block-blink{50%{background:var(--retro-title)}}.desk-screen-boot{position:absolute;z-index:60;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:var(--retro-crt-off);animation:desk-screen-reveal 2.8s steps(1,end) both}.desk-screen-boot-beam{position:absolute;left:0;right:0;top:50%;height:4px;margin-top:-2px;background:var(--retro-crt-beam);box-shadow:0 0 24px var(--retro-crt-beam);animation:desk-screen-beam 2.8s ease-out both}.desk-screen-boot-text{position:absolute;inset:56px 64px auto;margin:0;color:var(--retro-boot-ink);font:400 34px/1.45 var(--font-pixel);white-space:pre-wrap}.desk-screen-boot-text span{animation:desk-screen-line 2.8s steps(1,end) forwards;animation-delay:calc(.75s + var(--line) * .22s);visibility:hidden}@keyframes desk-screen-beam{0%,8%{transform:scaleX(0);opacity:1}16%{transform:scaleX(1);height:4px;margin-top:-2px;opacity:1}26%{top:0;height:100%;margin-top:0;opacity:.85}34%,to{top:0;height:100%;margin-top:0;opacity:0}}@keyframes desk-screen-line{0%{visibility:visible}to{visibility:visible}}@keyframes desk-screen-reveal{0%,92%{opacity:1}96%{opacity:.5}to{opacity:0}}.desktop-about-app{display:flex;flex-direction:column;gap:16px;padding:24px;container-type:inline-size}.desktop-app-scroll .desktop-about-app :is(.studio-hero,.studio-about){padding:0}.desktop-app-scroll .desktop-about-app .studio-container{width:100%;max-width:none;padding:0}.desktop-about-app .studio-profile-row{display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:12px}.desktop-about-app .studio-profile-resume{margin:0}@media(max-width:1099px),(pointer:coarse){.desktop-about-app:has(.mobile-workbench) .studio-profile-resume{display:none}}.desktop-about-app .studio-hero-name{max-width:none;margin-top:16px;font-size:var(--type-mobile-heading);line-height:1.25}.desktop-about-app .studio-hero-actions{margin-top:16px}.desktop-about-app .studio-about-copy{display:grid;gap:16px}.desktop-about-app .studio-about-lead{font-size:var(--type-body);line-height:1.6}.desktop-about-app .retro-profile-facts{margin:0;padding:16px 0 0;border-top:1px solid var(--border)}.desktop-about-app .retro-profile-facts>div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:16px}.desktop-about-app .mobile-workbench{margin:0}@container (max-width: 480px){.desktop-about-app .studio-profile-row{grid-template-columns:64px minmax(0,1fr)}.desktop-about-app .studio-profile-photo{width:64px;height:64px}.desktop-about-app .studio-profile-resume{grid-column:1 / -1;justify-self:start}.desktop-about-app .retro-profile-facts>div{grid-template-columns:minmax(0,1fr);gap:4px}}@media(max-width:1099px),(pointer:coarse){.desktop-about-app{padding:12px}}@media(hover:hover)and (pointer:fine){:root:not([data-mode=classic]) body{cursor:url(/cursors/retro-arrow.svg) 1 1,auto}:root:not([data-mode=classic]) :is(button:not(:disabled),a:not([aria-disabled=true]),[role=button]:not([aria-disabled=true]),[role=option]:not([aria-disabled=true]),select:not(:disabled)){cursor:url(/cursors/retro-hand.svg) 11 1,pointer}}@media(min-width:1100px)and (pointer:fine){.desktop-about-app{gap:20px;padding:24px}.desktop-about-app .studio-hero>.studio-container{padding:20px;border:2px groove var(--retro-etch);background:var(--surface)}.desktop-about-app .studio-profile-row{grid-template-columns:96px minmax(0,1fr) auto;align-items:center;gap:16px}.desktop-about-app .studio-profile-photo{width:96px;height:96px;border:2px inset var(--retro-etch)}.desktop-about-app .studio-profile-name{font-size:22px;font-weight:700}.desktop-about-app .studio-hero-name{margin-top:20px;padding-top:16px;border-top:2px groove var(--retro-etch)}.desktop-about-app .studio-hero-actions{margin-top:12px}.desktop-about-app .retro-profile-facts{padding:16px 20px;border:2px groove var(--retro-etch)}.desktop-about-app .retro-profile-facts>div+div{margin-top:12px}.desktop-app-scroll .studio-experience .studio-container{width:min(100% - 48px,880px)}.desktop-app-scroll .studio-timeline{display:grid;gap:14px}.desktop-app-scroll .studio-timeline-item{grid-template-columns:150px minmax(0,1fr);padding:18px 20px;border:2px groove var(--retro-etch)}.desktop-app-scroll .studio-timeline-meta p{font-weight:700;color:var(--ink)}.desktop-app-scroll .studio-recognition .studio-container{width:calc(100% - 48px)}.desktop-app-scroll .studio-awards{gap:14px}.desktop-app-scroll .studio-award{padding:16px 18px;border:2px groove var(--retro-etch)}.desktop-app-scroll .studio-technologies .studio-container{width:calc(100% - 48px)}.desktop-app-scroll .studio-skill-row{grid-template-columns:110px minmax(0,1fr);padding-block:10px}.desktop-app-scroll .studio-skill-list{gap:8px}.desktop-app-scroll .studio-skill-list>li{min-height:0}.desktop-app-scroll .studio-skill{min-height:0;padding:4px 10px;border:2px outset var(--retro-etch);background:var(--retro-chrome);color:var(--retro-ink);font-size:14px}.desktop-app-scroll .studio-skill-separator{display:none}.desktop-app-scroll .desktop-contact-app{justify-items:stretch;max-width:none;padding:24px}.desktop-app-scroll .desktop-contact-app .retro-mail-form{padding:18px 20px;border:2px groove var(--retro-etch)}.desktop-app-scroll .retro-mail-to{max-width:none}.desktop-app-scroll .desktop-contact-app .desktop-copy-email{justify-self:start}.desktop-app-scroll .desktop-document-app{max-width:980px}.desktop-app-scroll .desktop-resume-preview{border:2px inset var(--retro-etch)}}:root[data-mode=classic]{--font-body: "Figtree", system-ui, sans-serif;--font-display: "Space Grotesk", var(--font-body);--radius-control: 10px;--radius-frame: 12px;--radius-dialog: 16px;--radius-shell: 18px}:root[data-mode=classic],:root[data-mode=classic] *{scrollbar-color:var(--muted) var(--paper)}:root[data-mode=classic] :is(.studio-action,.studio-icon-button,.btn,.code-link-btn,.screenshot-product-btn,.modal-close,.screenshot-modal-close,.carousel-arrow){padding:10px 16px;border:1px solid var(--border);border-radius:var(--radius-control);background:var(--surface);color:var(--ink);font:inherit;font-weight:500}:root[data-mode=classic] .studio-icon-button{padding:0}:root[data-mode=classic] :is(.modal-close,.screenshot-modal-close,.carousel-arrow){padding:0}:root[data-mode=classic] .studio-action-outline{background:transparent}:root[data-mode=classic] :is(.studio-action,.studio-icon-button,.btn,.code-link-btn,.screenshot-product-btn,.modal-close,.screenshot-modal-close,.carousel-arrow):is(:hover,:active){background:var(--surface-soft);border-color:var(--muted);color:var(--ink)}:root[data-mode=classic] :is(.studio-text-action,.desk-text-action):hover{text-decoration:none}:root[data-mode=classic] :is(.toast,.cmd-palette-card){--ink: inherit;--muted: inherit;--surface: inherit;--surface-soft: inherit;--border: inherit;border:1px solid var(--border);background:var(--surface);color:var(--ink)}:root[data-mode=classic] .toast{border-radius:12px}:root[data-mode=classic] .cmd-palette-card{border-radius:var(--radius-dialog)}:root[data-mode=classic] :is(.modal-card,.screenshot-modal-content){--border: inherit;border:1px solid var(--border);border-radius:var(--radius-dialog);box-shadow:none}:root[data-mode=classic] .cmd-palette-input{border:0;background:transparent;color:var(--ink)}:root[data-mode=classic] .cmd-palette-item.selected{background:var(--ink);color:var(--paper)}:root[data-mode=classic] .modal-card :is(.studio-project-detail,.studio-project-case-item){padding:14px 0 0;border:0;border-top:1px solid var(--border)}:root[data-mode=classic] .modal-card :is(.studio-project-detail-preview,.studio-project-preview,.gear-media-box,.studio-portrait-frame,.case-study-item){border:1px solid var(--border)}:root[data-mode=classic] .modal-card :is(.studio-proof,.tech-pill,.stamp,.modal-badge,.studio-stack-item,.studio-project-detail-stack li){border:1px solid var(--border);background:transparent;color:inherit}:root[data-mode=classic] .deck-photo-card{border-radius:16px}:root[data-mode=classic] :is(.studio-hero-socials a,.studio-hero-socials button,.studio-footer-links a,.studio-footer-links button){border-radius:10px}:root[data-mode=classic] :is(.studio-project-image,.studio-project-detail-stack li,.studio-monogram){border-radius:8px}:root[data-mode=classic] :is(.studio-project-preview-label,.studio-proof,.stamp,.studio-stack-item){border-radius:6px}:root[data-mode=classic] .contact-email-cta{border-radius:12px}:root[data-mode=classic] kbd{border-radius:4px}:root[data-mode=classic] .studio-nav-links [aria-current]:before{border-radius:3px}.studio-back-to-os{min-height:44px;padding:8px 12px;border:1px solid var(--border);border-radius:var(--radius-control);background:var(--surface);color:var(--ink);font:600 var(--type-small)/1.2 var(--font-body);cursor:pointer}.studio-back-to-os:hover{background:var(--surface-soft);border-color:var(--muted)}
