:root{color-scheme:light;--bg: #eef0f3;--fg: #343941;--muted: #626a77;--accent: #f5656b;--accent-hover: #fb777c;--accent-2: var(--accent-ink);--accent-ink: #b33345;--accent-soft: #f9e4e7;--on-accent: #382027;--glass: #f0f2f5;--glass-border: #d8dde4;--rule: #d8dde4;--danger: #b33345;--panel: #eef0f3;--panel-light: #f7f8fa;--bg-grain: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n' color-interpolation-filters='sRGB'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0.09 0 0 0 0.888 0.09 0 0 0 0.896 0.09 0 0 0 0.908 0 0 0 0 1'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E");--panel-light-grain: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n' color-interpolation-filters='sRGB'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0.09 0 0 0 0.924 0.09 0 0 0 0.928 0.09 0 0 0 0.935 0 0 0 0 1'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E");--panel-edge: #d3d8e0;--surface-edge: #ffffffb3;--nav-edge: #ffffffc7;--accent-edge: #982f4059;--danger-edge: #e6b9c2;--readout-edge: #b6becb;--toggle-edge: #b9c1cd;--knob-shadow: 2px 2px 5px #6b768540, inset 1px 1px 0 #ffffff60;--photo-edge: #ffffff66;--photo-shadow: 1px 2px 6px #35405214, -1px -1px 4px #ffffff45;--photo-shadow-hover: 2px 3px 8px #35405220, -1px -1px 5px #ffffff60;--backplate-tint: #eef0f399;--backplate-muted: #363e48;--backplate-accent: #70202e;--backplate-filter: blur(10px) saturate(1.12);--backplate-sheen: linear-gradient(135deg, #ffffff70, #ffffff08 35%, #ffffff00 60%, #ffffff30), linear-gradient( 115deg, #dbe9e14a, #e3e0ef30 25%, #f9dde54a 50%, #dee8f53d 75%, #ddeddd47 );--control-tint: var(--backplate-tint);--control-inset-tint: #eef0f330;--control-highlight: #ffffff26;--control-selected: #f5dfe642;--toggle-on: #f5656ba6;--control-edge: #ffffff45;--control-shadow: 2px 3px 8px #3540521f, -2px -2px 7px #ffffff30, inset 1px 1px 0 #ffffff45;--ink: var(--fg);--ink-muted: var(--muted);--key-top: #f5f6f8;--key-bottom: #e9ecf0;--key-hover: #fafbfc;--key-shadow: #aeb5c0;--screen: #e9ecf0;--screen-edge: #d8dde4;--focus: var(--accent-ink);--radius: 26px;--radius-window: 32px;--radius-control: 14px;--radius-button: 999px;--vw: 1vw;--dvh: 1vh;--radius-screen: 20px;--shadow: 12px 16px 36px #141c2c26, inset 1px 1px 1px #fff, inset -1px -1px 1px #d8dde480;--shadow-raised: 5px 5px 12px #c9ced780, -5px -5px 12px #ffffffeb;--shadow-inset: inset 2px 2px 5px #59657730, inset -2px -2px 5px #ffffff50;--shadow-pressed: inset 3px 3px 6px #4c586a38, inset -2px -2px 5px #ffffff4d;--font: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display: var(--font);--font-mono: "SF Mono", SFMono-Regular, Menlo, Consolas, monospace;--track: -.025em;--nav-height: calc(88px + env(safe-area-inset-top, 0px)) }@media screen{html.theme-dark{color-scheme:dark;--bg: #15181e;--fg: #e4e7ec;--muted: #9ea6b3;--accent-ink: #ff9aa2;--accent-soft: #3b2329;--glass: #1c2027;--glass-border: #2c323c;--rule: #2c323c;--danger: #ff9aa2;--panel: #15181e;--panel-light: #1d2128;--bg-grain: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n' color-interpolation-filters='sRGB'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0.09 0 0 0 0.037 0.09 0 0 0 0.049 0.09 0 0 0 0.073 0 0 0 0 1'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E");--panel-light-grain: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n' color-interpolation-filters='sRGB'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0.09 0 0 0 0.069 0.09 0 0 0 0.084 0.09 0 0 0 0.112 0 0 0 0 1'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E");--panel-edge: #2e343e;--surface-edge: #ffffff1c;--nav-edge: #ffffff21;--accent-edge: #ff9aa259;--danger-edge: #6b3a44;--readout-edge: #4a5260;--toggle-edge: #4a5260;--knob-shadow: 2px 2px 5px #00000066, inset 1px 1px 0 #ffffff1a;--photo-edge: #ffffff14;--photo-shadow: 1px 2px 6px #00000059, -1px -1px 4px #ffffff08;--photo-shadow-hover: 2px 3px 8px #00000073, -1px -1px 5px #ffffff0d;--backplate-tint: #15181e99;--backplate-muted: #cdd2db;--backplate-accent: #ffc2c7;--backplate-sheen: linear-gradient( 135deg, #ffffff0a, #ffffff02 35%, #ffffff00 60%, #ffffff06 ), linear-gradient( 115deg, #9fd1bb08, #b3a8e006 25%, #f2a0b808 50%, #a8c3f007 75%, #a9dcae08 );--control-inset-tint: #15181e30;--control-highlight: #ffffff12;--control-selected: #f5656b1a;--control-edge: #ffffff1a;--control-shadow: 2px 3px 8px #0000004d, -1px -1px 4px #ffffff08, inset 1px 1px 0 #ffffff14;--key-top: #232831;--key-bottom: #1a1e25;--key-hover: #2a303a;--key-shadow: #4a5260;--screen: #1a1e25;--screen-edge: #2c323c;--shadow: 12px 16px 36px #00000066, inset 1px 1px 1px #ffffff14, inset -1px -1px 1px #0000004d;--shadow-raised: 5px 5px 12px #00000059, -4px -4px 10px #ffffff08;--shadow-inset: inset 2px 2px 5px #00000066, inset -2px -2px 5px #ffffff0a;--shadow-pressed: inset 3px 3px 6px #00000073, inset -2px -2px 5px #ffffff0a}}@supports (height: 1dvh){:root{--dvh: 1dvh}}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){:root,html.theme-dark{--backplate-tint: var(--panel);--control-inset-tint: var(--panel)}}@media(prefers-reduced-transparency:reduce){:root,html.theme-dark{--backplate-tint: var(--panel);--backplate-filter: none;--control-inset-tint: var(--panel)}}*{box-sizing:border-box}html,body,#root{margin:0;height:100%;color:var(--fg);font-family:var(--font);font-size:15px;letter-spacing:0;-webkit-font-smoothing:antialiased}html{background:var(--bg-grain) 0 0 / 160px 160px,var(--bg)}body:before,body:after{content:"";position:fixed;inset:0;pointer-events:none;z-index:1}.crt-off body:before,.crt-off body:after{display:none}body:before{background:repeating-linear-gradient(to bottom,rgba(0,0,0,.3) 0 1px,transparent 1px 3px);opacity:.5;animation:crt-flicker 5.5s ease-in-out infinite}body:after{background-image:radial-gradient(118% 92% at 50% 50%,transparent 52%,rgba(0,0,0,.62) 100%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)' opacity='0.5'/%3E%3C/svg%3E");background-size:cover,140px 140px;opacity:.5}::selection{background:var(--accent-soft);color:var(--fg)}h1,h2,h3,h4{font-weight:600;letter-spacing:var(--track)}a{color:var(--accent-2);text-decoration:none}a:hover{color:var(--accent-ink);text-decoration:underline;text-underline-offset:3px}a.story-ref{text-decoration:underline;text-underline-offset:3px}.skip-link{position:fixed;top:max(8px,env(safe-area-inset-top));left:16px;z-index:100;padding:12px 18px;border-radius:var(--radius-button);color:var(--ink);transform:translateY(-180%)}.skip-link:focus{transform:none}main:focus{outline:none}.eyebrow{font-family:var(--font);font-size:11px;font-weight:600;line-height:1.6;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}.action-link{display:inline-flex;justify-content:center;align-items:center;gap:10px;min-height:44px;padding:12px 20px;border:1px solid var(--control-edge);border-radius:var(--radius-button);color:var(--fg);box-shadow:var(--control-shadow);font:600 13px/1.4 var(--font);text-align:center;cursor:pointer;transition:box-shadow .2s ease,color .2s ease,background .2s ease}.action-link:hover{--control-overlay: var(--control-highlight);color:var(--fg);text-decoration:none;text-shadow:none}.action-link.primary{--control-overlay: var(--control-selected);color:var(--accent-ink);border-color:var(--accent-edge)}.action-link.primary:hover{--control-overlay: var(--control-highlight);border-color:var(--accent-ink)}.action-link:active:not(:disabled){box-shadow:var(--shadow-pressed)}.action-link:disabled{opacity:.5;cursor:default}.action-link svg{flex-shrink:0}.page-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.print-only{display:none}:where(a,button,input,select,[tabindex]):focus-visible{outline:2px solid var(--focus);outline-offset:4px}.topnav,.ribbon,.ruler,.settings,.social-list{--focus: var(--accent-ink)}.topnav,.ruler,.ribbon,.settings,.modal,.loading-card,.lightbox-nav,.career-list>li,.social-list a,.photo-tile,.profile-photo,.fallback-notice,.error-card,.screenshot-toast,.screenshot-stage-bar,.scene-hint,.freecam-hint-card{--muted: var(--backplate-muted);--ink-muted: var(--muted);--accent-ink: var(--backplate-accent);--accent-2: var(--accent-ink);--control-tint: var(--control-inset-tint);background:var(--backplate-sheen),var(--backplate-tint)}.topnav,.ruler,.ribbon,.settings,.modal,.lightbox-nav,.screenshot-toast,.screenshot-stage-bar,.scene-hint,.freecam-hint-card,.freecam-btn,.scene-intro .action-link,.skip-link,.skip-btn{-webkit-backdrop-filter:var(--backplate-filter);backdrop-filter:var(--backplate-filter)}.action-link,.navlink,.icon-btn,.ruler .ruler-nav,.ruler button .tick,.ribbon-readout,.project-jump select,.settings select,.settings input[type=checkbox]:before,.settings input[type=checkbox]:after,.settings-status,.story-links a,.photo-jump a,.lightbox-control,.screenshot-btn,.skip-link,.skip-btn{--accent-ink: var(--backplate-accent);--accent-2: var(--accent-ink);--focus: var(--accent-ink);background:linear-gradient(var(--control-overlay, #ffffff00),var(--control-overlay, #ffffff00)),var(--backplate-sheen),var(--control-tint)}*{scrollbar-width:thin;scrollbar-color:var(--key-shadow) transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:var(--key-shadow);border:3px solid transparent;background-clip:padding-box}*::-webkit-scrollbar-thumb:hover{background:var(--accent);background-clip:padding-box}.scene-canvas{position:fixed;inset:0;width:calc(var(--vw) * 100);height:calc(var(--dvh) * 100);display:block;touch-action:none;background:#171d2b}.body-selection-outline{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;fill:none;stroke:var(--accent);stroke-width:2px;stroke-dasharray:4px 6px;stroke-linecap:round}.overlay{position:fixed;inset:0;pointer-events:none;z-index:10}.overlay>*{pointer-events:auto}.timeline-controls{display:contents;pointer-events:none}.timeline-controls>.ruler{pointer-events:auto}.scene-intro{--intro-top: calc(var(--nav-height) + 40px);--intro-left: max(40px, env(safe-area-inset-left));position:absolute;top:var(--intro-top);left:var(--intro-left);width:min(400px,calc(100% - 112px));isolation:isolate}.scene-intro:before{content:"";position:absolute;inset:calc(0px - var(--intro-top)) -32px -24px calc(0px - var(--intro-left));z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 20% 30%,#141b2bb3,#141b2b00 75%)}.scene-intro h1{max-width:13ch;margin:0;font:500 clamp(30px,var(--vw) * 2.8,44px)/1.12 var(--font-display);letter-spacing:-.045em;text-transform:none;text-wrap:balance;color:#f5f7fb}.intro-body{max-width:34ch;margin:16px 0 20px;font:16px/1.6 var(--font-display);color:#d9deea}.intro-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px}.scene-hint{position:fixed;left:50%;bottom:calc(max(24px,env(safe-area-inset-bottom)) + 158px);transform:translate(-50%);width:max-content;max-width:calc(100% - 48px);margin:0;padding:9px 16px;border:1px solid var(--surface-edge);border-radius:999px;color:var(--muted);box-shadow:var(--shadow);font-size:11px;line-height:1.6;text-align:center;pointer-events:none}.hint-touch{display:none}@media(pointer:coarse){.hint-desktop{display:none}.hint-touch{display:inline}}.topnav{position:fixed;top:calc(16px + env(safe-area-inset-top));left:max(24px,env(safe-area-inset-left));right:max(24px,env(safe-area-inset-right));display:flex;align-items:center;justify-content:space-between;min-height:72px;padding:12px 20px;gap:24px;z-index:20;color:var(--ink);border:1px solid var(--nav-edge);border-radius:var(--radius);box-shadow:none}.topnav .brand{position:relative;display:flex;flex-direction:row;align-items:center;justify-content:center;line-height:1.15;flex-shrink:0;gap:12px}.topnav .brand:hover{text-decoration:none;text-shadow:none}.brand-text{display:flex;flex-direction:column;gap:3px}.topnav .brand .brand-mark{display:flex;align-items:center;justify-content:center;gap:3px;width:36px;height:36px;flex:0 0 36px;border-radius:50%;background:var(--panel);box-shadow:var(--shadow-inset)}.topnav .brand-mark>span{width:3px;height:16px;border-radius:999px;background:var(--accent);transform:translate(1.5px,.5px) rotate(30deg)}.topnav .brand-mark>span:nth-child(2){height:12px;opacity:.65}.topnav .brand-mark>span:nth-child(3){height:8px;opacity:.4}.topnav .brand .name{font-family:var(--font-display);font-weight:600;font-size:19px;letter-spacing:-.035em;line-height:1.3;color:var(--ink)}.topnav nav{display:flex;gap:8px;align-items:center}.topnav nav>.icon-btn{margin-left:8px;border-radius:50%}.topnav .navlink{border-radius:var(--radius-button)}.navlink{position:relative;pointer-events:auto;padding:10px 18px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-button);color:var(--ink-muted);font-family:var(--font);font-size:13px;font-weight:500;letter-spacing:-.01em;border:1px solid transparent;cursor:pointer;transition:color .2s ease,background .2s ease,box-shadow .2s ease}.navlink:hover{--control-overlay: var(--control-highlight);color:var(--ink);text-shadow:none;text-decoration:none}.navlink.active{--control-overlay: var(--control-selected);color:var(--accent-ink);box-shadow:var(--shadow-inset);text-decoration:none}.icon-btn{pointer-events:auto;width:44px;height:44px;flex:0 0 44px;border-radius:var(--radius-button);display:grid;place-items:center;border:1px solid var(--control-edge);color:var(--ink);box-shadow:var(--control-shadow);cursor:pointer;transition:color .2s ease,background .2s ease,box-shadow .2s ease}.icon-btn:hover:not(:disabled){--control-overlay: var(--control-highlight);color:var(--accent-ink)}.icon-btn.active{--control-overlay: var(--control-selected);border-color:var(--accent-edge);color:var(--accent-ink);box-shadow:var(--shadow-pressed)}.modal-actions>.icon-btn,.icon-btn.close{width:44px;height:44px;flex:0 0 44px;padding:0;border-radius:50%}.icon-btn.close:hover{--control-overlay: var(--control-selected);color:var(--accent-ink)}.icon-btn:disabled{opacity:.4;cursor:default;box-shadow:var(--shadow-inset)}.icon-btn:active:not(:disabled),.navlink:active{box-shadow:var(--shadow-pressed)}.freecam{position:fixed;right:max(24px,env(safe-area-inset-right));top:calc(var(--nav-height) + 16px);z-index:20;display:flex;flex-direction:column;align-items:flex-end;gap:20px;pointer-events:none}.freecam-btn{position:relative;pointer-events:auto;flex:none;width:44px;height:44px;border-radius:50%}.freecam-btn[aria-pressed=true]{--control-overlay: var(--control-selected);color:var(--accent-ink);box-shadow:var(--shadow-pressed)}.freecam-btn[aria-pressed=true]:after{content:"";position:absolute;inset:4px;border:1px solid var(--accent-ink);border-radius:50%;pointer-events:none}.freecam-hint{position:fixed;top:calc(var(--nav-height) + 16px);left:50%;transform:translate(-50%);width:min(520px,calc(100% - 144px));text-align:center;pointer-events:none}.freecam-hint-card{padding:12px 16px;border:1px solid var(--surface-edge);border-radius:var(--radius-screen);box-shadow:var(--shadow);font-size:12px;line-height:1.6}.scene-hint strong,.freecam-hint-card strong{color:var(--accent-2)}.freecam-hint-touch{display:none}@media(pointer:coarse){.freecam-hint-desktop{display:none}.freecam-hint-touch{display:inline}}.ruler{position:fixed;right:max(24px,env(safe-area-inset-right));top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:4px;z-index:18;align-items:center;padding:10px 5px;border:1px solid var(--surface-edge);border-radius:999px;box-shadow:var(--shadow)}.ruler .ruler-nav{pointer-events:auto;width:32px;height:32px;display:grid;place-items:center;border:none;border-radius:50%;color:var(--ink);line-height:1;cursor:pointer;padding:0}.ruler .ruler-nav:hover:not(:disabled){--control-overlay: var(--control-highlight);color:var(--accent-ink)}.ruler .ruler-nav:disabled{opacity:.3;cursor:default}.ruler button{position:relative;-webkit-tap-highlight-color:transparent;pointer-events:auto;display:grid;place-items:center;width:32px;height:32px;background:none;border:none;border-radius:50%;color:var(--ink-muted);cursor:pointer;font-family:var(--font);font-size:11px;letter-spacing:0;padding:0}.ruler button:hover{color:var(--ink)}.ruler button:focus-visible{outline-offset:2px}.ruler button .tick{display:grid;place-items:center;width:14px;height:14px;border-radius:50%;border:1px solid var(--panel-edge);box-shadow:var(--shadow-inset);transition:background .15s ease,border-color .15s ease}.ruler button .tick:after{content:"";width:6px;height:6px;border-radius:50%;background:transparent}.ruler button:hover .tick,.ruler button:focus-visible .tick{border-color:var(--accent-ink)}.ruler button .label{position:absolute;pointer-events:none;right:44px;padding:8px 12px;line-height:16px;border:1px solid var(--glass-border);border-radius:var(--radius-control);background:var(--glass);color:var(--fg);box-shadow:var(--shadow);opacity:0;transform:translate(6px);transition:opacity .2s ease,transform .2s ease;white-space:nowrap}.ruler button:hover .label,.ruler button:focus-visible .label{opacity:1;transform:none}.ruler button.active{color:var(--accent-ink)}.ruler button.active .tick{--control-overlay: var(--control-selected);border-color:var(--accent-ink);box-shadow:var(--shadow-pressed)}.ruler button.active .tick:after{background:var(--accent-ink)}.ribbon{position:fixed;left:50%;bottom:max(24px,env(safe-area-inset-bottom));transform:translate(-50%);display:grid;grid-template-columns:64px minmax(0,1fr);gap:16px;align-items:center;width:min(560px,calc(100% - 200px));min-height:112px;padding:14px 18px;text-align:left;color:var(--ink);border:1px solid var(--surface-edge);border-radius:var(--radius);box-shadow:var(--shadow);z-index:16}.ribbon-channel{display:flex;flex-direction:column;align-items:center;gap:7px}.channel-label{color:var(--ink-muted);font-size:11px}.channel-value{color:var(--ink);font-family:var(--font-display);font-size:30px;font-weight:500;line-height:1}.channel-value>span{color:var(--ink-muted);font-family:var(--font);font-size:11px;font-weight:400}.channel-meter{display:flex;align-items:center;gap:3px}.channel-meter>span{width:4px;height:4px;border-radius:50%;background:var(--panel-edge)}.channel-meter>.active{background:var(--accent)}.ribbon-readout{border:1px solid var(--control-edge);border-radius:var(--radius-screen);box-shadow:var(--shadow-inset);color:var(--fg);min-width:0;min-height:98px;padding:12px 16px;font:inherit;text-align:left;cursor:pointer}.ribbon-readout:disabled{cursor:default}.ribbon-readout:hover:not(:disabled),.ribbon-readout:focus-visible{border-color:var(--readout-edge)}.ribbon-readout:hover:not(:disabled){--control-overlay: var(--control-highlight)}.ribbon-readout:active:not(:disabled){box-shadow:var(--shadow-pressed)}.ribbon-readout:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.ribbon-identity{display:flex;align-items:center;gap:12px}.ribbon-identity>span{min-width:0}.ribbon .company{display:block;font-family:var(--font-display);font-size:21px;font-weight:600;letter-spacing:-.025em;line-height:1.15;color:var(--fg);overflow-wrap:anywhere}.ribbon .company-logo{width:32px;height:32px;object-fit:contain;flex-shrink:0}.ribbon .role{display:block;color:var(--muted);font-size:12px;letter-spacing:0;line-height:1.5;margin-top:3px}.ribbon .dates{display:flex;flex-wrap:wrap;gap:4px 8px;color:var(--muted);font-size:11px;letter-spacing:0;margin-top:6px}.ribbon .location:before{content:"";display:inline-block;width:3px;height:3px;margin-right:8px;border-radius:50%;background:var(--key-shadow);vertical-align:middle}.ribbon-cta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:8px;color:var(--accent-ink);font-size:12px;font-weight:500;line-height:1.5}.modal-scrim{position:fixed;inset:0;width:100%;height:calc(var(--dvh) * 100);max-width:none;max-height:none;margin:0;border:0;color:var(--fg);z-index:40;display:grid;place-items:center;padding:18px;padding-top:max(18px,env(safe-area-inset-top));padding-bottom:max(18px,env(safe-area-inset-bottom));padding-left:max(18px,env(safe-area-inset-left));padding-right:max(18px,env(safe-area-inset-right));background:#18203380;backdrop-filter:blur(8px);animation:fade-in .2s ease}.modal-scrim:not([open]){display:none}.modal-scrim::backdrop{background:transparent}.modal-scrim:has(.modal.expanded){padding:0}.modal{--modal-header-actions-space: calc( 2 * var(--modal-actions-size) + 32px - var(--modal-pad) );--modal-pad: clamp(18px, var(--vw) * 3, 30px);--modal-actions-top: var(--modal-pad);--modal-actions-size: 44px;position:relative;display:flex;flex-direction:column;width:min(880px,100%);max-height:100%;overflow:hidden;border-radius:var(--radius-window);border:1px solid var(--surface-edge);box-shadow:var(--shadow);padding:var(--modal-pad);animation:rise .24s cubic-bezier(.16,1,.3,1)}.modal .accent-bar{position:absolute;left:0;top:50%;width:4px;height:20px;transform:translateY(-50%);border-radius:999px}.modal h2{margin:0 0 12px;font-family:var(--font-display);font-size:26px;font-weight:600;line-height:1.35;letter-spacing:-.025em;text-transform:none;color:var(--fg);padding-right:var(--modal-header-actions-space);padding-bottom:12px;border-bottom:1px solid var(--glass-border)}.modal h2 .poi-index{color:var(--accent-2);font-family:var(--font);font-size:16px}.modal .eyebrow{display:flex;align-items:center;min-height:var(--modal-actions-size);margin-bottom:10px;color:var(--muted);font-size:12px;letter-spacing:0;padding-right:var(--modal-header-actions-space)}.modal .modal-content{position:relative;flex:1 1 auto;min-height:0;overflow-y:auto;scroll-snap-type:y proximity;scroll-padding-top:0}.modal .modal-content:focus-visible{outline:none}.modal .poi-section{scroll-snap-align:start;scroll-margin-top:0}.modal .poi-section+.poi-section{margin-top:28px;padding-top:28px;border-top:1px solid var(--glass-border)}.modal .poi-section:last-child{padding-bottom:8px}.modal .body{margin-top:14px;line-height:1.75;font-family:var(--font-display);font-size:16px;color:var(--fg);overflow-wrap:anywhere}.modal .body p{margin:0 0 12px}.modal .body a{color:var(--accent-2);text-decoration:underline;text-underline-offset:3px}.modal .media{margin-top:14px;display:grid;gap:12px}.media-description{color:var(--muted);font-family:var(--font-display);font-size:14px;line-height:1.6}.media-description p{margin:0 0 8px}.media-description a{color:var(--accent-2);text-decoration:underline;text-underline-offset:3px}.modal .media img,.modal .media video{width:100%;border-radius:var(--radius-screen);border:1px solid var(--glass-border);display:block}.modal .media iframe{width:100%;aspect-ratio:16 / 9;border:1px solid var(--glass-border);border-radius:var(--radius-screen);display:block}.media-zoom{display:block;width:100%;padding:0;border:0;background:none;cursor:zoom-in}.media-zoom:focus-visible{outline-offset:-4px}.youtube-video{min-width:0;margin:0}.youtube-player{position:relative;aspect-ratio:16 / 9;overflow:hidden;border:1px solid var(--glass-border);border-radius:var(--radius-screen);background:var(--screen)}.modal .media .youtube-player iframe{position:absolute;inset:0;height:100%;border:0}.youtube-caption{display:none;margin-top:8px;color:var(--muted);font-size:12px}.youtube-caption.has-error{display:block}.youtube-caption-title{display:none}.modal-actions{position:absolute;top:var(--modal-actions-top);right:var(--modal-pad);display:flex;align-items:center;min-height:var(--modal-actions-size);gap:8px}.modal.poi-modal{--poi-bezel: 8px;--poi-content-radius: calc(var(--radius-window) - var(--poi-bezel));--poi-scrollbar-gutter: 16px;width:min(1120px,100%);padding:var(--poi-bezel);border:1px solid var(--surface-edge);box-shadow:var(--shadow);outline:none}.modal.poi-modal .modal-header{flex:none;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;min-height:var(--modal-actions-size);padding:12px 12px 18px}.modal.poi-modal .modal-header .modal-title{position:relative;flex:1;min-width:0;padding:8px 16px;font-family:var(--font-display);font-size:16px;font-weight:600;letter-spacing:-.02em;color:var(--fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.modal-title .company-name{display:block;overflow:hidden;text-overflow:ellipsis}.project-jump{--focus: var(--accent-ink);display:flex;align-items:center;flex:0 0 100%;gap:12px;color:var(--ink-muted);font-size:12px}.project-jump label{flex-shrink:0}.project-jump-control{position:relative;flex:1;min-width:0}.project-jump select{appearance:none;-webkit-appearance:none;width:100%;min-width:0;min-height:44px;padding:10px 40px 10px 12px;border:1px solid var(--control-edge);border-radius:var(--radius-button);color:var(--fg);box-shadow:var(--shadow-inset);font:14px var(--font-display)}.project-jump-caret,.settings-select-caret{position:absolute;top:50%;right:12px;transform:translateY(-50%);color:var(--muted);pointer-events:none}.modal.poi-modal .story-meta{color:var(--muted);font:12px/1.6 var(--font)}.modal.poi-modal .highlight-badge{display:inline-flex;align-items:center;gap:6px;margin:0 0 12px;padding:3px 10px;border:1px solid var(--accent-edge);border-radius:999px;background:var(--accent-soft);color:var(--accent-ink);font:600 11px/1.6 var(--font)}.modal.poi-modal .story-platforms{display:block}.modal.poi-modal .modal-header .modal-actions{--focus: var(--accent-ink);position:static;flex-shrink:0;gap:8px}.modal.poi-modal .poi-content-frame{position:relative;display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden}.modal.poi-modal .poi-content-frame:before{content:"";position:absolute;inset:0 var(--poi-scrollbar-gutter) 0 0;pointer-events:none;background:var(--panel-light-grain) 0 0 / 160px 160px,var(--panel-light);border-radius:var(--poi-content-radius)}.modal.poi-modal .modal-content{scrollbar-gutter:stable;padding:0 calc(var(--modal-pad) + var(--poi-scrollbar-gutter)) 0 var(--modal-pad)}.modal.poi-modal h2{padding:0;border-bottom:0;text-shadow:none}.modal.poi-modal h2 .poi-index{font:inherit;color:var(--muted);font-weight:400}.modal.poi-modal .poi-section{max-width:1040px;margin-inline:auto}.modal.poi-modal .poi-section:first-child{padding-top:24px}.modal.poi-modal .poi-intro-header{display:grid;grid-template-columns:minmax(0,1fr) 120px;align-items:center;gap:24px}.modal.poi-modal .poi-intro-header h2{margin-bottom:8px}.modal.poi-modal .poi-intro-header .profile-photo{width:120px;height:120px;margin:0}.modal.poi-modal .body{color:var(--fg)}.modal.poi-modal .body p{margin:1em 0}.modal.expanded{display:flex;flex-direction:column;width:calc(var(--vw) * 100);max-width:calc(var(--vw) * 100);height:calc(var(--dvh) * 100);max-height:calc(var(--dvh) * 100);border-radius:0;overflow:hidden;padding-top:max(var(--modal-pad),env(safe-area-inset-top));padding-bottom:max(var(--modal-pad),env(safe-area-inset-bottom));padding-left:max(var(--modal-pad),env(safe-area-inset-left));padding-right:max(var(--modal-pad),env(safe-area-inset-right))}.modal.expanded .modal-actions{top:max(var(--modal-pad),env(safe-area-inset-top))}.modal.expanded .accent-bar{border-radius:0}.modal.expanded .modal-content{padding-bottom:20px}.modal.poi-modal.expanded{padding-top:max(var(--poi-bezel),env(safe-area-inset-top));padding-bottom:max(var(--poi-bezel),env(safe-area-inset-bottom));padding-left:max(var(--poi-bezel),env(safe-area-inset-left));padding-right:max(var(--poi-bezel),env(safe-area-inset-right))}.modal.poi-modal.expanded .modal-content{padding-bottom:0}.modal.poi-modal.expanded .poi-section{width:100%;max-width:none}.modal.poi-modal.expanded .poi-section:not(:has(>.media)) .poi-copy{max-width:1040px;margin-inline:auto}.modal.poi-modal.expanded .media,.modal.poi-modal.expanded .media-item:only-child{max-width:none}.settings{position:fixed;display:flex;flex-direction:column;top:calc(var(--nav-height) + 16px);right:max(24px,env(safe-area-inset-right));width:min(356px,calc(var(--vw) * 100 - 32px));max-height:calc(var(--dvh) * 100 - var(--nav-height) - 40px);overflow:hidden;z-index:30;border-radius:var(--radius-window);color:var(--ink);border:1px solid var(--surface-edge);box-shadow:var(--shadow);padding:20px;animation:rise .2s ease}.settings-controls{flex:1 1 auto;min-height:0;overflow-y:auto;margin:0 -8px;padding:0 8px}.settings-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:12px}.settings-heading h2{margin:0;font:600 20px var(--font-display);text-transform:none}.setting-note{display:block;margin-top:4px;color:var(--ink-muted);font-size:11px;text-transform:none}.settings .row{display:flex;align-items:center;justify-content:space-between;margin:0;padding:10px 0;min-height:48px;border-bottom:1px solid var(--rule);font-size:13px;letter-spacing:0;color:var(--ink);gap:12px}.settings .row:last-child{border-bottom:0}.settings select,.settings input[type=checkbox]{position:relative;accent-color:var(--accent)}.settings input[type=checkbox]{appearance:none;-webkit-appearance:none;width:52px;height:44px;flex-shrink:0;margin:0;display:grid;place-items:center;background:none;border:0;cursor:pointer}.settings input[type=checkbox]:before{content:"";position:absolute;box-sizing:border-box;top:9px;left:3px;width:46px;height:26px;border:1px solid var(--toggle-edge);border-radius:999px;box-shadow:var(--shadow-inset)}.settings input[type=checkbox]:checked:before{--control-overlay: var(--toggle-on);border-color:var(--accent-ink);box-shadow:var(--shadow-pressed)}.settings input[type=checkbox]:after{--control-tint: var(--panel);content:"";position:absolute;box-sizing:border-box;top:12px;left:6px;width:20px;height:20px;border-radius:50%;border:1px solid var(--control-edge);box-shadow:var(--knob-shadow);transition:transform .2s ease}.settings input[type=checkbox]:checked:after{border-color:var(--fg);transform:translate(20px)}.settings-select{position:relative;flex-shrink:0}.settings select{appearance:none;-webkit-appearance:none;width:138px;height:44px;color:var(--fg);border:1px solid var(--control-edge);border-radius:var(--radius-button);box-shadow:var(--shadow-inset);padding:8px 40px 8px 12px;font-family:var(--font);font-size:13px;letter-spacing:0}.settings select:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.settings input:focus-visible{outline-color:var(--focus)}.settings-status{display:flex;flex-shrink:0;justify-content:space-between;gap:12px;margin-top:16px;padding:14px;border:1px solid var(--control-edge);border-radius:var(--radius-control);color:var(--muted);font:11px var(--font-mono);box-shadow:var(--shadow-inset)}.settings-status>span{display:flex;align-items:center;gap:8px}.status-led{width:6px;height:6px;border-radius:50%;background:var(--accent)}.hud{position:fixed;bottom:max(10px,env(safe-area-inset-bottom));left:10px;z-index:30;font-family:var(--font-mono);font-size:11px;letter-spacing:0;text-transform:uppercase;color:var(--accent-2);background:var(--glass);border:1px solid var(--glass-border);border-radius:var(--radius-control);padding:8px 10px;line-height:1.5;pointer-events:none}.skip-btn{position:fixed;bottom:18px;left:50%;transform:translate(-50%);z-index:24;border:1px solid var(--glass-border);color:var(--accent-2);border-radius:var(--radius-button);padding:7px 16px;font-family:var(--font);font-size:11px;letter-spacing:0;text-transform:uppercase;cursor:pointer}.skip-btn:hover{--control-overlay: var(--control-highlight);color:var(--accent-ink);border-color:var(--accent-ink);box-shadow:var(--shadow)}.loading-screen{position:fixed;inset:0;z-index:60;display:grid;place-items:center;background:var(--bg);opacity:1;transition:opacity .5s ease}.loading-screen.is-done{opacity:0;pointer-events:none}.loading-card{width:min(400px,var(--vw) * 86);padding:32px;border:1px solid var(--surface-edge);border-radius:var(--radius-window);box-shadow:var(--shadow-raised);text-align:left}.loading-title{font-size:17px;font-weight:500;letter-spacing:-.02em;color:var(--fg);margin-bottom:20px}.loading-track{height:8px;width:100%;border-radius:999px;background:var(--screen);box-shadow:var(--shadow-inset);overflow:hidden}.loading-fill{height:100%;width:0;border-radius:999px;background:var(--accent);transition:width .3s ease}.loading-label{margin-top:12px;font-size:12px;letter-spacing:0;color:var(--muted);min-height:1em}.loading-skip{display:inline-flex;align-items:center;gap:8px;min-height:44px;margin-top:16px;font-size:13px}.page{position:relative;z-index:5;max-width:960px;margin:0 auto;padding:calc(var(--nav-height) + 64px) clamp(24px,var(--vw) * 5,48px) 96px}.page,.modal.poi-modal .body{line-height:1.8;font-family:var(--font-display);font-size:16px;overflow-wrap:anywhere}.page h1,.modal.poi-modal .poi-section h2{display:flex;align-items:center;gap:16px;font-family:var(--font-display);font-size:48px;font-weight:600;line-height:1.2;letter-spacing:-.045em;text-transform:none;color:var(--fg);margin:0 0 20px;overflow-wrap:anywhere}.page .lede{color:var(--muted);font-size:18px;letter-spacing:0;margin-bottom:32px}.about-header{display:grid;grid-template-columns:minmax(0,1fr) 180px;align-items:center;gap:40px;margin-bottom:32px}.about-header .lede{margin-bottom:0;padding-bottom:0;border:0}.about-header .profile-photo{margin:0}.career-list{list-style:none;padding:0;display:grid;gap:24px}.career-list>li{display:grid;grid-template-columns:132px minmax(0,1fr);gap:24px;padding:28px;border:1px solid var(--surface-edge);border-radius:var(--radius);box-shadow:var(--shadow-raised)}.career-list h3{margin:0;font:500 23px/1.3 var(--font-display);text-transform:none}.career-dates,.career-role{color:var(--muted);font:12px/1.6 var(--font)}.career-list .career-dates{margin:4px 0 0}.career-role{margin:8px 0 16px;font-size:13px}.highlight-legend{display:flex;align-items:center;gap:8px;margin:0 0 8px;color:var(--muted);font-size:13px}.highlight-legend svg{flex-shrink:0;color:var(--accent-ink)}.story-links{display:flex;flex-wrap:wrap;gap:10px;padding:0;list-style:none}.story-links a{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 12px;border:1px solid var(--control-edge);border-radius:var(--radius-button);color:var(--accent-ink);box-shadow:var(--control-shadow);font:12px/1.5 var(--font-display)}.story-links a:hover{--control-overlay: var(--control-highlight);border-color:var(--panel-edge);text-decoration:none}.story-links a:active{box-shadow:var(--shadow-pressed)}.story-links a.highlight{--control-overlay: color-mix(in srgb, var(--accent-soft) 75%, transparent);border-color:var(--accent-edge)}.story-links a.highlight:hover{--control-overlay: var(--accent-soft)}.story-links svg{flex-shrink:0}.site-footer{position:relative;z-index:5;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;max-width:864px;margin:0 auto;padding:20px 24px max(32px,env(safe-area-inset-bottom));border-top:1px solid var(--glass-border);color:var(--muted);font-size:12px}.site-footer>div{display:flex;gap:20px}.site-footer a{display:inline-flex;align-items:center;min-height:44px}.resume-links{display:flex;flex-wrap:wrap;gap:20px;list-style:none;padding:0}.resume-stories{padding-left:20px;border-left:1px solid var(--glass-border)}.resume-content h3,.resume-content h4{text-transform:none}.fallback-notice{padding:24px;border:1px solid var(--surface-edge);border-radius:var(--radius-screen);box-shadow:var(--shadow-raised)}.fallback-notice h2{padding:0;border:0;font:500 22px var(--font-display);text-transform:none}.fallback-notice details,.error-card details{margin-top:20px;font-size:12px}.fallback-notice pre{white-space:pre-wrap;overflow-wrap:anywhere}.page section{margin:40px 0}.page section[id]{scroll-margin-top:calc(var(--nav-height) + 24px)}.page h2{padding-top:28px;border-top:1px solid var(--glass-border);font-family:var(--font);font-size:16px;letter-spacing:-.02em;color:var(--fg)}.golden-record{display:block;width:min(70%,440px);height:auto;margin:clamp(56px,var(--vw) * 10,96px) auto 0;opacity:.45;filter:grayscale(1);user-select:none}.profile-photo{margin:0 0 28px;width:180px;height:180px}.profile-photo img{object-fit:cover}.social-list{list-style:none;padding:0;display:grid;gap:16px}.social-list a{display:grid;grid-template-columns:76px minmax(0,1fr) 17px;align-items:center;gap:10px;padding:18px 20px;border-radius:var(--radius-button);border:1px solid var(--surface-edge);box-shadow:var(--shadow-raised);color:var(--ink);font-family:var(--font);font-size:14px;letter-spacing:0}.social-list a:hover{border-color:var(--panel-edge);color:var(--accent-ink);text-shadow:none;background-color:var(--key-hover);text-decoration:none}.social-handle{color:var(--ink-muted);font-size:12px;text-transform:none}.page.photography{max-width:1100px}.photo-jump{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:8px}.photo-jump a{display:inline-flex;align-items:center;min-height:44px;padding:10px 20px;border:1px solid var(--control-edge);border-radius:var(--radius-button);color:var(--fg);box-shadow:var(--control-shadow);font-size:13px;font-family:var(--font);letter-spacing:0}.photo-jump a:hover{--control-overlay: var(--control-highlight);color:var(--accent-ink);text-decoration:none}.photo-jump a:active{box-shadow:var(--shadow-pressed)}.photo-grid{list-style:none;margin:16px 0 0;padding:0;columns:240px;column-gap:24px}.photo-grid>li{display:inline-block;width:100%;vertical-align:top;break-inside:avoid;margin-bottom:24px}.photo-tile,.profile-photo{display:block;padding:2px;border:1px solid var(--photo-edge);border-radius:var(--radius-screen);box-shadow:var(--photo-shadow);overflow:hidden}.photo-tile{width:100%;cursor:pointer;transition:box-shadow .2s ease}.photo-tile:hover,.photo-tile:focus-visible{box-shadow:var(--photo-shadow-hover)}.photo-tile img,.profile-photo img{display:block;width:100%;height:auto;border-radius:calc(var(--radius-screen) - 3px)}.photo-empty{margin:16px 0 0;padding:24px;border:1px solid var(--glass-border);border-radius:var(--radius-screen);color:var(--muted);font-size:14px;box-shadow:var(--shadow-inset);letter-spacing:0}.modal-scrim.lightbox-scrim{padding:8px;padding-top:max(8px,env(safe-area-inset-top));padding-bottom:max(8px,env(safe-area-inset-bottom));padding-left:max(8px,env(safe-area-inset-left));padding-right:max(8px,env(safe-area-inset-right));background:#000000e6}.lightbox{display:flex;flex-direction:column;width:100%;height:100%;min-width:0;max-width:100%;min-height:0;outline:none;color:#fff}.lightbox-carousel{display:flex;flex:1;min-height:0;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;outline:none}.lightbox-carousel::-webkit-scrollbar{display:none}.lightbox-figure{display:flex;flex:0 0 100%;flex-direction:column;min-width:0;margin:0;padding:0;scroll-snap-align:start;scroll-snap-stop:always;user-select:none}.lightbox-image{display:flex;flex:1;align-items:center;justify-content:center;min-height:0}.lightbox-figure img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;margin:0 auto;border-radius:12px}.lightbox-figure figcaption{flex:0 0 auto;max-height:60px;overflow-y:auto;margin-top:8px;padding:0 8px;color:#fffc;font-size:13px;line-height:1.5;text-align:center}.lightbox-nav{display:flex;align-items:center;justify-content:center;flex:0 0 auto;align-self:center;gap:16px;margin-top:12px;padding:8px 12px;border:1px solid #ffffffb3;border-radius:999px;box-shadow:var(--shadow)}.lightbox-counter{min-width:64px;text-align:center;font-size:12px;color:var(--muted)}.lightbox-control{display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid var(--control-edge);border-radius:50%;color:var(--fg);box-shadow:var(--control-shadow);cursor:pointer}.lightbox-control:hover:not(:disabled){--control-overlay: var(--control-highlight);color:var(--accent-ink)}.lightbox-control:active:not(:disabled){box-shadow:var(--shadow-pressed)}.lightbox-control:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.lightbox-control:disabled{opacity:.25;cursor:default}.error-screen{position:fixed;inset:0;z-index:999;display:grid;place-items:center;padding:24px;background:var(--bg)}.error-card{max-width:640px;border:1px solid var(--danger-edge);border-radius:var(--radius-window);box-shadow:var(--shadow-raised);padding:28px}.error-card h1{font-size:22px;letter-spacing:-.025em;color:var(--danger);margin:0 0 12px}.error-card pre{margin-top:14px;max-height:320px;overflow:auto;font-family:var(--font-mono);font-size:12px;color:var(--fg);background:var(--screen);border:1px solid var(--glass-border);padding:12px;border-radius:var(--radius-control);white-space:pre-wrap}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes crt-flicker{0%,to{opacity:.46}50%{opacity:.56}}.motion-paused .modal-scrim,.motion-paused .modal,.motion-paused .settings,.motion-paused body:before{animation:none}.motion-paused .loading-screen,.motion-paused .loading-fill,.motion-paused .action-link,.motion-paused .navlink,.motion-paused .icon-btn,.motion-paused .photo-tile,.motion-paused .settings input[type=checkbox]:after{transition:none}.motion-paused .modal .modal-content{scroll-snap-type:none}@media(prefers-reduced-motion:reduce){.modal .modal-content{scroll-snap-type:none}.modal,.modal-scrim,.settings,.skip-btn{animation:none}.loading-fill,.loading-screen,.action-link,.navlink,.icon-btn{transition:none}body:before{animation:none}.photo-tile,.settings input[type=checkbox]:after{transition:none}}@media(forced-colors:active){:root{--backplate-tint: var(--panel);--backplate-filter: none;--control-inset-tint: var(--panel)}.topnav,.ribbon,.ruler,.settings,.modal,.action-link,.icon-btn,.navlink,.ribbon-readout,.story-links a,.social-list a,.photo-jump a,.lightbox-nav,.lightbox-control{border-color:ButtonText}.navlink.active,.icon-btn.active,.freecam-btn[aria-pressed=true]{border-color:Highlight;color:Highlight}.ruler button.active .tick{forced-color-adjust:none;border-color:Highlight;background:Canvas}.ruler button.active .tick:after{background:Highlight}.settings input[type=checkbox]{appearance:auto}.settings input[type=checkbox]:before,.settings input[type=checkbox]:after{display:none}}@media(min-width:721px){.timeline-controls:has(>.ruler){position:fixed;top:calc(50% + var(--nav-height) / 2);right:max(24px,env(safe-area-inset-right));display:flex;flex-direction:column;align-items:center;gap:10px;transform:translateY(-50%);z-index:18}.timeline-controls:has(>.ruler)>.ruler,.timeline-controls:has(>.ruler)>.freecam{position:static;transform:none}.timeline-controls:has(>.ruler)>.freecam{gap:10px}.modal.poi-modal .media{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px;max-width:896px}.modal.poi-modal .media-item{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid var(--glass-border);border-radius:var(--radius-screen);background:var(--screen)}.modal.poi-modal .media-item:only-child{grid-column:1 / -1;justify-self:center;width:100%;max-width:440px}.modal.poi-modal .media-item:has(iframe){grid-column:1 / -1}.modal.poi-modal .media-item:hover{border-color:var(--panel-edge)}.modal.poi-modal .media-item:focus-within{border-color:var(--accent-2)}.modal.poi-modal .media img,.modal.poi-modal .media video,.modal.poi-modal .media iframe,.modal.poi-modal .youtube-player{border:0;border-radius:0}.modal.poi-modal .media-description{order:1;padding:12px;border-top:1px solid var(--glass-border)}.modal.poi-modal .media-description p:last-child{margin-bottom:0}.modal.poi-modal .youtube-caption{display:grid;gap:6px;margin-top:0;padding:10px 12px;border-top:1px solid var(--glass-border)}.modal.poi-modal .youtube-caption-title{display:block;color:var(--fg);font:500 13px/1.45 var(--font-display);overflow-wrap:anywhere}}@media(min-width:981px){.modal.poi-modal .poi-section:has(>.media){display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;column-gap:32px}.modal.poi-modal .poi-copy{min-width:0}.modal.poi-modal .poi-section:has(>.media) h2{align-items:flex-start;gap:12px;margin-bottom:16px;font-size:clamp(30px,var(--vw) * 3,36px)}.modal.poi-modal .poi-section>.media{min-width:0;margin-top:0}.modal.poi-modal .poi-section:has(>.media):nth-child(2n of.poi-story){grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}.modal.poi-modal .poi-section:nth-child(2n of.poi-story)>.poi-copy{grid-column:2;grid-row:1}.modal.poi-modal .poi-section:nth-child(2n of.poi-story)>.media{grid-column:1;grid-row:1}.modal.poi-modal .poi-section+.poi-section{margin-top:44px;padding-top:44px}}@media(max-width:980px){:root{--nav-height: calc(124px + env(safe-area-inset-top, 0px)) }.topnav{top:calc(12px + env(safe-area-inset-top));min-height:104px;flex-direction:column;align-items:stretch;justify-content:center;gap:8px;padding:10px 16px}.topnav .brand{align-self:flex-start}.topnav .brand .name{font-size:18px}.topnav .brand .brand-mark{width:30px;height:30px;flex-basis:30px;gap:2.5px}.topnav .brand-mark>span{width:2.5px;height:13px}.topnav .brand-mark>span:nth-child(2){height:10px}.topnav .brand-mark>span:nth-child(3){height:6px}.topnav nav{min-width:0;width:100%;gap:6px}.topnav .navlink{flex:1;text-align:center;white-space:nowrap;min-width:0}.ribbon{width:min(560px,calc(100% - 148px));grid-template-columns:54px minmax(0,1fr);gap:10px;padding:8px 12px}.ribbon .role{font-size:11px}}@media(min-width:721px)and (min-height:501px)and (max-height:720px){.timeline-controls:has(>.ruler){display:contents}.timeline-controls:has(>.ruler)>.ruler{display:none}.timeline-controls:has(>.ruler)>.freecam{position:fixed;top:calc(var(--nav-height) + 16px);right:max(24px,env(safe-area-inset-right))}}@media(max-width:720px){.scene-intro{display:none}.scene-intro h1{max-width:20ch;font-size:26px}.intro-actions{margin-top:16px}.intro-body{display:none}.freecam-hint-card{color:var(--fg)}.about-header{grid-template-columns:minmax(0,1fr) 96px;gap:20px}.about-header .profile-photo{width:96px;height:96px}.career-list>li{grid-template-columns:minmax(0,1fr);gap:10px;padding:20px}.project-jump{display:block}.project-jump label{display:none}.project-jump select,.settings select{font-size:16px}.ruler{display:none}.topnav{left:max(12px,env(safe-area-inset-left));right:max(12px,env(safe-area-inset-right));padding-right:14px;padding-left:14px}.topnav .navlink{padding:10px 5px;font-size:12px}.topnav nav>.icon-btn{margin-left:2px}.ribbon{width:calc(100% - 24px);bottom:max(12px,env(safe-area-inset-bottom));grid-template-columns:minmax(0,1fr);gap:12px;padding:12px;min-height:140px}.ribbon-channel{display:none}.ribbon-readout{display:flex;flex-direction:column;justify-content:center;align-self:stretch;padding:8px 12px;min-height:0}.ribbon .company{font-size:20px}.ribbon .role{font-size:11px}.ribbon .dates{font-size:10px}.freecam{right:calc(max(16px,env(safe-area-inset-right)) + 3px)}.settings{right:max(16px,env(safe-area-inset-right))}.page{padding-top:calc(var(--nav-height) + 36px)}.page,.modal.poi-modal .body{font-size:15px}.page h1,.modal.poi-modal .poi-section h2{font-size:32px;gap:12px}.page .lede{font-size:16px}.photo-grid{column-width:150px;column-gap:12px}.photo-grid>li{margin-bottom:12px}.modal-scrim{padding:12px;padding-top:max(12px,env(safe-area-inset-top));padding-bottom:max(12px,env(safe-area-inset-bottom))}.modal{--modal-pad: 18px;border-width:1px}.modal.poi-modal{--poi-bezel: 0px;--modal-pad: 16px;--poi-scrollbar-gutter: 0px;border-radius:24px}.modal-scrim:has(>.poi-modal:not(.expanded)){padding:max(8px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left))}.modal.poi-modal .modal-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:12px 16px}.modal.poi-modal .modal-header .modal-title{padding-left:12px;font-size:15px}.modal.poi-modal .project-jump{grid-column:1 / -1;min-width:0}.modal.poi-modal .poi-content-frame{border-top:1px solid var(--rule);background:var(--panel-light-grain) 0 0 / 160px 160px,var(--panel-light)}.modal.poi-modal .poi-content-frame:before{display:none}.modal.poi-modal .modal-content{padding-inline:var(--modal-pad);overscroll-behavior-y:contain}.modal.poi-modal .poi-section:first-child{padding-top:18px}.modal.poi-modal .poi-intro-header{grid-template-columns:minmax(0,1fr) 72px;gap:16px}.modal.poi-modal .poi-intro-header .profile-photo{width:72px;height:72px}.modal.poi-modal .poi-section:last-child{padding-bottom:max(16px,env(safe-area-inset-bottom))}.modal.poi-modal .poi-section h2{font-size:26px;line-height:1.2}.modal.poi-modal.expanded{border-radius:0}.modal h2{font-size:21px}.modal.expanded:not(.poi-modal) .modal-content{padding-right:12px}}@media(max-width:380px){.topnav .brand{gap:8px}.topnav .brand-text{width:auto}.topnav .brand .name{font-size:17px}.scene-intro h1{font-size:23px}.topnav nav{gap:4px}.topnav .navlink{font-size:11px;padding-right:3px;padding-left:3px}.topnav .navlink:first-child{flex-grow:1.3}.ribbon-identity{gap:8px}.ribbon{min-height:140px}.ribbon .company-logo{width:22px;height:22px}.ribbon .company{font-size:18px}.photo-grid{columns:1}}@media(max-width:720px)and (max-height:640px)and (orientation:portrait){.intro-actions{display:none}}@media(max-width:720px),(max-height:500px)and (orientation:landscape){.scene-hint{top:calc(var(--nav-height) + 16px);bottom:auto;width:min(520px,calc(100% - 144px));max-width:none;padding:12px 16px;border-radius:var(--radius-screen);color:var(--fg);font-size:12px}}@media(max-height:500px)and (orientation:landscape){:root{--nav-height: calc(76px + env(safe-area-inset-top, 0px)) }.scene-intro{display:none}.scene-hint,.freecam-hint{top:calc(var(--nav-height) + 16px);width:min(520px,calc(100% - (2*max(136px,env(safe-area-inset-left,0px) + 120px,env(safe-area-inset-right,0px) + 120px))))}.topnav{top:calc(8px + env(safe-area-inset-top));min-height:60px;flex-direction:row;align-items:center;gap:12px;padding:8px 12px}.topnav .brand{align-self:center}.topnav .brand .name{font-size:16px}.topnav .navlink{padding:10px 6px;font-size:11px}.ruler{top:calc(50% + var(--nav-height) / 2);gap:4px;padding:6px 4px}.ruler .ruler-nav{display:none}.ruler button,.ruler .ruler-nav{height:24px}.timeline-controls:has(>.ruler){display:contents}.timeline-controls:has(>.ruler)>.ruler{position:fixed;top:calc(50% + var(--nav-height) / 2);right:max(24px,env(safe-area-inset-right));width:auto;transform:translateY(-50%)}.timeline-controls:has(>.ruler)>.freecam{position:fixed;top:calc(var(--nav-height) + 16px);right:auto;left:max(16px,env(safe-area-inset-left));flex-direction:row;gap:20px}}@media(max-width:720px)and (max-height:500px)and (orientation:landscape){.intro-actions{display:none}.ribbon{width:min(460px,calc(100% - 100px));min-height:100px;grid-template-columns:minmax(0,1fr)}.ribbon-readout{padding:8px 10px}.ribbon .company{font-size:16px}}@media(min-width:721px)and (max-height:500px){.ribbon{display:none}.timeline-controls:has(>.ruler){top:calc(50% + var(--nav-height) / 2)}.timeline-controls:has(>.ruler)>.freecam{flex-direction:row}}@media(min-width:721px)and (max-height:360px){.ruler .ruler-nav{display:none}}@media(pointer:coarse){.ruler button,.ruler .ruler-nav{width:44px;height:44px}.ruler button .label{right:56px}}@media(pointer:coarse)and (max-height:500px)and (orientation:landscape){.ribbon,.intro-actions{display:none}.ruler{display:flex}.ruler .ruler-nav{display:none}.ruler button,.ruler .ruler-nav{height:24px}}html.screenshot-stage{--vw: 19.2px;--dvh: 10.8px;overflow:hidden;background:#000}html.screenshot-stage body{position:fixed;inset:auto;top:var(--shot-top);left:var(--shot-left);width:1920px;height:1080px;margin:0;overflow:hidden;background:var(--bg);transform:scale(var(--shot-scale));transform-origin:0 0}html.screenshot-stage .modal-scrim:modal{position:fixed;inset:auto;top:var(--shot-top);left:var(--shot-left);width:1920px;height:1080px;margin:0;transform:scale(var(--shot-scale));transform-origin:0 0}html.screenshot-stage #root{height:100%;overflow:auto;scrollbar-width:none;background:var(--bg)}html.screenshot-stage #root::-webkit-scrollbar{display:none}.screenshot-scene-frame{position:fixed;inset:0;display:block;width:100%;height:100%;pointer-events:none}.screenshot-ui{font:500 12px/1.4 var(--font);color:var(--fg);letter-spacing:0}.screenshot-stage-bar{position:fixed;top:0;left:0;right:0;z-index:2147483000;display:flex;align-items:center;gap:8px;height:40px;padding:0 12px;border-bottom:1px solid var(--glass-border)}.screenshot-stage-status{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.screenshot-stage-bar.is-warning .screenshot-stage-status,.screenshot-stage-bar.is-busy .screenshot-stage-status{color:var(--accent-2)}.screenshot-toast{position:fixed;right:16px;bottom:16px;z-index:2147483000;display:grid;gap:10px;width:360px;padding:12px;border:1px solid var(--glass-border);border-radius:var(--radius-control);box-shadow:var(--shadow)}.screenshot-toast-preview{display:block;width:100%;aspect-ratio:16 / 9;border-radius:6px}.screenshot-toast-actions{display:flex;gap:8px}.screenshot-btn{padding:4px 12px;border:1px solid var(--control-edge);border-radius:var(--radius-button);box-shadow:var(--control-shadow);font:inherit;color:inherit;cursor:pointer}.screenshot-btn.is-primary{--control-overlay: var(--control-selected);border-color:var(--accent-edge);color:var(--accent-ink)}.screenshot-btn:hover:not(:disabled){--control-overlay: var(--control-highlight)}.screenshot-btn:active:not(:disabled){box-shadow:var(--shadow-pressed)}.screenshot-btn:disabled{opacity:.6;cursor:progress}.screenshot-btn:focus-visible{outline:2px solid var(--focus);outline-offset:2px}@media print{.scene-canvas,.body-selection-outline,.overlay,.topnav,.ruler,.ribbon,.settings,.hud,.skip-btn,.loading-screen,.scene-intro,.site-footer,.skip-link,.modal-scrim,.fallback-notice{display:none!important}.print-only{display:block;padding:24px}.resume-content{color:#111;font:12pt/1.5 sans-serif}.resume-content a,.resume-content .eyebrow,.resume-content .lede{color:#111}.resume-content h1,.resume-content h2,.resume-content h3,.resume-content h4{break-after:avoid}.resume-stories section{break-inside:avoid}body:before,body:after{display:none!important}body{background:#fff;color:#111}html,body,#root{height:auto;overflow:visible!important}html{background:#fff;background-image:none}}
