@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-ext-400-normal-BQZuk6qB.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-400-normal-DQukG94-.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-400-normal-obahsSVq.woff2) format("woff2"),url(/assets/inter-cyrillic-400-normal-HOLc17fK.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-ext-400-normal-DGGRlc-M.woff2) format("woff2"),url(/assets/inter-greek-ext-400-normal-KugGGMne.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-400-normal-B4URO6DV.woff2) format("woff2"),url(/assets/inter-greek-400-normal-q2sYcFCs.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-vietnamese-400-normal-DMkecbls.woff2) format("woff2"),url(/assets/inter-vietnamese-400-normal-Bbgyi5SW.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-ext-400-normal-C1nco2VV.woff2) format("woff2"),url(/assets/inter-latin-ext-400-normal-77YHD8bZ.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2) format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-ext-500-normal-B0yAr1jD.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-500-normal-BmqWE9Dz.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-500-normal-BasfLYem.woff2) format("woff2"),url(/assets/inter-cyrillic-500-normal-CxZf_p3X.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-ext-500-normal-C4iEst2y.woff2) format("woff2"),url(/assets/inter-greek-ext-500-normal-2j5mBUwD.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-500-normal-BIZE56-Y.woff2) format("woff2"),url(/assets/inter-greek-500-normal-Xzm54t5V.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-vietnamese-500-normal-DOriooB6.woff2) format("woff2"),url(/assets/inter-vietnamese-500-normal-mJboJaSs.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-ext-500-normal-CV4jyFjo.woff2) format("woff2"),url(/assets/inter-latin-ext-500-normal-BxGbmqWO.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2) format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-ext-600-normal-Dfes3d0z.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-600-normal-Bcila6Z-.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-600-normal-CWCymEST.woff2) format("woff2"),url(/assets/inter-cyrillic-600-normal-4D_pXhcN.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-ext-600-normal-DRtmH8MT.woff2) format("woff2"),url(/assets/inter-greek-ext-600-normal-B8X0CLgF.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-600-normal-plRanbMR.woff2) format("woff2"),url(/assets/inter-greek-600-normal-BZpKdvQh.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-vietnamese-600-normal-Cc8MFFhd.woff2) format("woff2"),url(/assets/inter-vietnamese-600-normal-BuLX-rYi.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-ext-600-normal-D2bJ5OIk.woff2) format("woff2"),url(/assets/inter-latin-ext-600-normal-CIVaiw4L.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2) format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-cyrillic-ext-700-normal-BjwYoWNd.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-700-normal-LO58E6JB.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-cyrillic-700-normal-CjBOestx.woff2) format("woff2"),url(/assets/inter-cyrillic-700-normal-DrXBdSj3.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-greek-ext-700-normal-qfdV9bQt.woff2) format("woff2"),url(/assets/inter-greek-ext-700-normal-BoQ6DsYi.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-greek-700-normal-C3JjAnD8.woff2) format("woff2"),url(/assets/inter-greek-700-normal-BUv2fZ6O.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-vietnamese-700-normal-DlLaEgI2.woff2) format("woff2"),url(/assets/inter-vietnamese-700-normal-BZaoP0fm.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-ext-700-normal-Ca8adRJv.woff2) format("woff2"),url(/assets/inter-latin-ext-700-normal-TidjK2hL.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-700-normal-Yt3aPRUw.woff2) format("woff2"),url(/assets/inter-latin-700-normal-BLAVimhd.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--rail-bg: #031522;--field-bg: #082238;--fg: #f4f4f7;--support: #bad3eb;--border: #244961;--action: #69b5fa;--node-mint: #5ce0b0;--node-blue: #5aa8f2;--node-coral: #f28a63;--node-violet: #b48af0;--node-rose: #f07aa8;--node-amber: #f4bf4f;--font-display: "Times New Roman", Times, serif;--font-body: "Inter", system-ui, sans-serif;color-scheme:dark}*{box-sizing:border-box}html{background:var(--rail-bg)}body{margin:0;min-width:320px;min-height:100vh;background:var(--rail-bg);color:var(--fg);font-family:var(--font-body);-webkit-font-smoothing:antialiased}img,svg{max-width:100%}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;left:12px;top:-48px;background:var(--action);color:var(--rail-bg);padding:10px 16px;border-radius:6px;font-weight:600;z-index:100;transition:top .15s ease}.skip-link:focus{top:12px}button{font-family:inherit;color:inherit}:focus-visible{outline:2px solid var(--action);outline-offset:2px}.app-shell{max-width:1490px;margin:0 auto;display:flex;align-items:stretch;min-height:100vh;background:var(--field-bg)}.field{flex:1 1 auto;min-width:0;background:var(--field-bg);overflow-x:hidden}.section-kicker{font-family:var(--font-body);font-size:12px;font-weight:600;letter-spacing:.14em;color:var(--support);margin:0 0 12px}.section-title{font-family:var(--font-display);font-weight:700;color:var(--fg);font-size:clamp(28px,3vw,36px);line-height:1.15;margin:0 0 28px;max-width:640px}section[id],.work-group[id],.case-study[id],.life-beyond-work[id],.working-style[id]{scroll-margin-top:24px}.overview,.selected-work,.side-projects,.about,.build-with-me{padding:96px 56px;border-top:1px solid var(--border)}.button{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-body);font-size:14px;font-weight:600;border-radius:999px;padding:12px 22px;border:1px solid transparent;cursor:pointer;text-decoration:none;background:none}.button--primary{background:var(--action);color:#04121f}.button--primary:hover{filter:brightness(1.06)}.button--primary:disabled{opacity:.4;cursor:not-allowed}.button--ghost{background:transparent;border-color:var(--border);color:var(--fg)}.button--ghost:hover{border-color:var(--action)}.button--ghost:disabled{opacity:.4;cursor:not-allowed}.rail{flex:0 0 220px;width:220px;background:var(--rail-bg);border-right:1px solid var(--border);padding:28px 20px;position:sticky;top:0;align-self:flex-start;height:100vh;overflow-y:auto}.rail-content{display:flex;flex-direction:column;height:100%;gap:28px}.rail-identity-name{font-family:var(--font-display);font-size:22px;margin:0;color:var(--fg)}.rail-identity-sub{margin:2px 0 0;font-size:12px;letter-spacing:.08em;color:var(--support);text-transform:uppercase}.rail-nav ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.rail-nav a{display:flex;align-items:center;gap:10px;padding:10px;border-radius:8px;color:var(--support);text-decoration:none;font-size:14px;font-weight:500}.rail-nav a:hover,.rail-nav a:focus-visible{color:var(--fg);background:#69b5fa1a}.rail-search{margin-top:auto;position:relative}.rail-search-label{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--support);margin-bottom:6px}.rail-search-input{width:100%;background:#f4f4f70d;border:1px solid var(--border);border-radius:8px;color:var(--fg);padding:8px 10px;font-size:13px}.rail-search-results{list-style:none;margin:6px 0 0;padding:6px;border:1px solid var(--border);border-radius:8px;background:var(--rail-bg);max-height:220px;overflow-y:auto}.rail-search-results button{display:block;width:100%;text-align:left;background:none;border:none;padding:8px;border-radius:6px;font-size:13px;color:var(--fg);cursor:pointer}.rail-search-results button:hover,.rail-search-results button:focus-visible{background:#69b5fa1f}.rail-search-empty{padding:8px;font-size:12px;color:var(--support)}.rail-cta{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 14px;border-radius:999px;border:1px solid var(--action);color:var(--action);text-decoration:none;font-size:13px;font-weight:600}.rail-cta:hover,.rail-cta:focus-visible{background:#69b5fa1f}.mobile-header{display:none}.field-guide{position:relative}.scaled-canvas-outer{width:100%;overflow:hidden;position:relative}.scaled-canvas-inner{transform-origin:top left;position:relative}.field-canvas-bg{position:absolute;top:0;right:0;bottom:0;left:0;background-image:url(/assets/terrain.png);background-size:cover;background-position:center;background-color:var(--field-bg);opacity:.45}.field-canvas-map{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1}.field-canvas-panel{position:absolute;left:40px;bottom:56px;width:420px;z-index:2}.field-canvas-legend{position:absolute;right:40px;bottom:40px;z-index:2}.hero--canvas{position:absolute;left:40px;top:50px;z-index:2;pointer-events:none}.hero--canvas .hero-cta,.hero--canvas .hero-secondary{pointer-events:auto}.hero--canvas .hero-headline{width:465px}.hero-kicker{font-size:12px;font-weight:600;letter-spacing:.14em;color:var(--support);margin:0 0 30px}.hero-headline{font-family:var(--font-display);font-weight:700;font-size:64px;line-height:1;color:var(--fg);margin:0 0 12px}.hero-headline-line{display:block}.hero-supporting{font-size:20px;color:var(--support);max-width:370px;line-height:1.35;margin:0 0 22px}.hero-cta{min-width:240px;width:fit-content;height:48px;padding:0 18px;gap:12px;border-radius:10px;font-size:18px;font-weight:500;white-space:nowrap;justify-content:center}.hero-cta>*{flex-shrink:0}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px 28px}.hero-secondary{display:inline-flex;align-items:center;gap:8px;min-height:48px;color:var(--action);font-size:18px;font-weight:600;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;white-space:nowrap}.hero-secondary:hover{text-decoration-thickness:2px}.hero-corner-label{position:absolute;left:860px;top:46px;z-index:2;display:flex;flex-direction:column;align-items:flex-start;gap:8px;font-size:12px;font-weight:600;letter-spacing:.14em;color:var(--support);margin:0;pointer-events:none}.hero-corner-rule{order:3;margin-top:10px;width:144px;height:1px;background:var(--border);display:inline-block}.hero--stacked{position:static;padding:48px 0 24px;max-width:640px}.hero--stacked .hero-headline{font-size:46px;width:auto}.field-map-wrap{position:relative;width:100%;height:100%}.field-map{width:100%;height:100%;display:block}.field-map-hit-area{cursor:grab}.field-map-hit-area:active{cursor:grabbing}.field-map-trail{fill:none;stroke:#8cc5ec;stroke-width:1;stroke-dasharray:2 6;opacity:.5}.field-map-edge{fill:none;stroke:#8cc5ec;stroke-width:1.5;opacity:.65;transition:opacity .15s ease,stroke .15s ease}.field-map-edge--dashed{stroke-dasharray:5 6;stroke:var(--action);opacity:.55}.field-map-edge.is-live{opacity:1;stroke:var(--action);stroke-width:2}.field-map-edge.is-dim{opacity:.15}.field-map-region-label{font-family:var(--font-display);font-size:26px;fill:var(--fg);font-weight:700}.field-map-region-sublabel{font-family:var(--font-body);font-size:13px;fill:var(--support)}.map-region--interests-ambitions .field-map-region-label{font-size:24px}.map-node{cursor:pointer;transition:opacity .15s ease}.map-node.is-dim{opacity:.45}.map-node:focus-visible{outline:2px solid var(--action);outline-offset:6px;border-radius:50%}.map-node-shape{fill:var(--action);stroke:#d5eeff;stroke-width:1.25}.map-node--mint .map-node-shape{fill:var(--node-mint)}.map-node--blue .map-node-shape{fill:var(--node-blue)}.map-node--coral .map-node-shape{fill:var(--node-coral)}.map-node--violet .map-node-shape{fill:var(--node-violet)}.map-node--rose .map-node-shape{fill:var(--node-rose)}.map-node--amber .map-node-shape{fill:var(--node-amber)}.map-node-ring{fill:none;stroke:var(--node-amber);stroke-width:2}.map-node-diamond{fill:none;stroke:var(--fg);stroke-width:1.75}.map-node.is-selected .map-node-diamond,.map-node.is-active .map-node-diamond{stroke:var(--action)}.map-node-label{font-family:var(--font-body);font-size:14px;font-weight:500;fill:var(--fg)}.map-node-label,.map-node-sublabel{paint-order:stroke;stroke:var(--field-bg);stroke-width:4px;stroke-linejoin:round}.map-node-sublabel{font-family:var(--font-body);font-size:12px;fill:var(--node-amber);font-weight:600}.map-legend{list-style:none;display:flex;gap:22px;margin:0;padding:0;background:none;border:none;font-size:12px;color:var(--support)}.map-legend-item{display:flex;align-items:center;gap:6px}.map-legend-swatch{width:12px;height:12px;display:inline-block}.map-legend-swatch--circle{border-radius:50%;background:var(--action)}.map-legend-swatch--diamond{border:1.5px solid var(--fg);transform:rotate(45deg);background:none}.map-legend-swatch--line{width:16px;height:0;border-top:2px solid var(--border)}.field-guide-compact{padding:0 24px 48px;display:flex;flex-direction:column;gap:24px}.map-view-toggle{display:inline-flex;border:1px solid var(--border);border-radius:999px;padding:3px;width:fit-content}.map-view-toggle button{background:none;border:none;color:var(--support);font-size:13px;font-weight:600;padding:8px 18px;border-radius:999px;cursor:pointer}.map-view-toggle button[aria-pressed=true]{background:var(--action);color:#04121f}.compact-map-scroll{overflow-x:auto;border:1px solid var(--border);border-radius:12px;background-image:url(/assets/terrain.png);background-size:cover}.compact-map-frame{width:960px;height:800px;position:relative}.topic-list{display:flex;flex-direction:column;gap:32px}.topic-list-region-title{font-family:var(--font-display);font-weight:400;font-size:20px;margin:0 0 12px;color:var(--fg)}.topic-list-region ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.topic-list-item{display:flex;align-items:center;gap:12px;width:100%;text-align:left;background:#f4f4f708;border:1px solid var(--border);border-radius:10px;padding:12px 14px;cursor:pointer}.topic-list-item.is-selected{border-color:var(--action)}.topic-list-swatch{flex:0 0 12px;width:12px;height:12px;border-radius:50%;background:var(--action)}.topic-list-swatch--mint{background:var(--node-mint)}.topic-list-swatch--blue{background:var(--node-blue)}.topic-list-swatch--coral{background:var(--node-coral)}.topic-list-swatch--violet{background:var(--node-violet)}.topic-list-swatch--rose{background:var(--node-rose)}.topic-list-swatch--amber{background:none;border:2px solid var(--node-amber)}.topic-list-swatch--interest{background:none;border:1.5px solid var(--fg);border-radius:2px;transform:rotate(45deg)}.topic-list-item-text{display:flex;flex-direction:column;gap:2px}.topic-list-label{font-weight:600;color:var(--fg);font-size:14px}.topic-list-summary{color:var(--support);font-size:13px}.topic-list-detail{margin:8px 0 0 24px;padding:12px 14px;border-left:2px solid var(--action);display:flex;flex-direction:column;gap:10px;align-items:flex-start}.topic-list-detail p{margin:0;color:var(--support);font-size:14px}.overview-lead{max-width:760px;margin:0 0 40px;font-size:20px;line-height:1.5;color:var(--fg)}.overview-heading{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--support);margin:0 0 16px}.overview-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 40px;margin:0 0 48px;padding:28px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.overview-fact dt{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--support);margin-bottom:10px}.overview-fact dd{margin:0;display:flex;flex-direction:column;gap:6px}.overview-fact-value{font-family:var(--font-display);font-size:22px;font-weight:700;line-height:1.2;color:var(--fg)}.overview-fact-detail{font-size:14px;line-height:1.45;color:var(--support)}.overview-columns{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:48px 64px}.overview-capabilities{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 28px}.overview-capabilities li{position:relative;padding-left:18px;font-size:15px;line-height:1.4;color:var(--fg)}.overview-capabilities li:before{content:"";position:absolute;left:0;top:.45em;width:7px;height:7px;border-radius:50%;background:var(--action)}.overview-note{margin:18px 0 40px;font-size:14px;line-height:1.5;color:var(--support)}.overview-cases{list-style:none;margin:0;padding:0;border-top:1px solid var(--border)}.overview-cases li{border-bottom:1px solid var(--border)}.overview-case{display:grid;grid-template-columns:96px minmax(0,1fr) auto;align-items:center;gap:4px 16px;width:100%;min-height:44px;padding:16px 4px 16px 0;background:none;border:none;text-align:left;cursor:pointer}.overview-case-years{font-size:13px;font-weight:600;color:var(--action)}.overview-case-text{display:flex;flex-direction:column;gap:2px}.overview-case-title{font-family:var(--font-display);font-size:20px;font-weight:700;color:var(--fg)}.overview-case-stage{font-size:13px;color:var(--support)}.overview-case-arrow{color:var(--action)}.overview-case:hover .overview-case-title,.overview-case:focus-visible .overview-case-title{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.overview-deeper{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;margin-top:56px;padding-top:28px;border-top:1px solid var(--border)}.overview-deeper .overview-heading{margin:0}.overview-deeper ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}.overview-deeper a{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border:1px solid var(--border);border-radius:999px;color:var(--fg);font-size:13px;font-weight:600;text-decoration:none}.overview-deeper a:hover,.overview-deeper a:focus-visible{border-color:var(--action);color:var(--action)}.work-group{margin-top:56px}.work-group+.work-group{margin-top:96px}.work-group-intro{max-width:720px;margin-bottom:32px}.work-group-title{font-family:var(--font-display);font-size:28px;font-weight:700;line-height:1.15;color:var(--fg);margin:0 0 14px}.work-group-paragraph{color:var(--support);font-size:16px;line-height:1.6;margin:0 0 12px}.work-group-lenses{list-style:none;margin:18px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}.work-group-lenses li{padding:6px 12px;border:1px solid var(--border);border-radius:999px;font-size:12px;font-weight:600;color:var(--support)}.case-study-list{border-top:1px solid var(--border)}.case-study{display:grid;grid-template-columns:minmax(240px,320px) minmax(0,1fr);gap:24px 56px;padding:40px 0;border-bottom:1px solid var(--border)}.case-study-years{margin:0 0 10px;font-size:13px;font-weight:600;letter-spacing:.04em;color:var(--action)}.case-study-title{font-family:var(--font-display);font-size:26px;font-weight:700;line-height:1.15;color:var(--fg);margin:0 0 10px;text-wrap:balance}.case-study-summary{margin:0;font-size:15px;line-height:1.5;color:var(--support)}.case-facets{display:grid;gap:18px;margin:0}.case-facet{display:grid;grid-template-columns:120px minmax(0,1fr);gap:16px}.case-facet dt{padding-top:4px;font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--support)}.case-facet dd{margin:0;font-size:15px;line-height:1.55;color:var(--fg)}.case-facets--stacked{margin:4px 0 8px}.case-facets--stacked .case-facet{grid-template-columns:1fr;gap:4px}.case-facets--stacked .case-facet dd{color:var(--support)}.selected-work-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:28px}.selected-work-card{border:1px solid var(--border);border-radius:14px;padding:28px;display:flex;flex-direction:column;gap:4px}.selected-work-icon{color:var(--action);margin-bottom:12px}.selected-work-title{font-family:var(--font-display);font-size:22px;font-weight:700;margin:0 0 10px;color:var(--fg)}.selected-work-summary{color:var(--support);margin:0 0 18px;font-size:14px}.selected-work-card .button{width:fit-content}.selected-work-status{text-transform:uppercase}.timeline-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.timeline-item{display:grid;grid-template-columns:100px 1fr;gap:12px;font-size:14px;line-height:1.4}.timeline-years{color:var(--action);font-weight:600}.timeline-body{display:flex;flex-direction:column;gap:2px}.timeline-title{color:var(--fg);font-weight:600}.timeline-note{color:var(--support)}.brain-button-caption{color:var(--support);font-size:13px;margin:-14px 0 28px;font-style:italic}.brain-button-scenarios{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:28px}.brain-button-scenario{background:#f4f4f708;border:1px solid var(--border);border-radius:999px;padding:10px 18px;color:var(--support);font-size:13px;font-weight:600;cursor:pointer}.brain-button-scenario[aria-pressed=true]{border-color:var(--action);color:var(--fg);background:#69b5fa1a}.brain-button-stages{display:flex;gap:24px;list-style:none;margin:0 0 24px;padding:0}.brain-button-stages li{display:flex;align-items:center;gap:8px;color:var(--support);font-size:13px;font-weight:600}.brain-button-stages li[aria-current=step]{color:var(--fg)}.brain-button-stage-index{width:22px;height:22px;border-radius:50%;border:1px solid var(--border);display:inline-flex;align-items:center;justify-content:center;font-size:12px}.brain-button-stages li[aria-current=step] .brain-button-stage-index{border-color:var(--action);color:var(--action)}.brain-button-stage-panel{border:1px solid var(--border);border-radius:14px;padding:28px;max-width:640px;margin-bottom:20px}.brain-button-stage-label{font-size:12px;font-weight:600;letter-spacing:.1em;color:var(--action);margin:0 0 12px}.brain-button-raw{margin:0;font-family:var(--font-display);font-size:20px;color:var(--fg);font-weight:400;line-height:1.4}.brain-button-note-title{font-weight:700;color:var(--fg);margin:6px 0}.brain-button-note-heading{margin:16px 0 6px;font-size:12px;font-weight:600;letter-spacing:.08em;color:var(--support)}.brain-button-note{color:var(--support);font-size:14px}.brain-button-note p{margin:4px 0}.brain-button-note ul{margin:4px 0;padding-left:18px}.brain-button-actions{display:flex;gap:10px;margin-top:20px}.brain-button-status{min-height:18px;font-size:13px;color:var(--action);margin:10px 0 0}.brain-button-learn-link{display:inline-block;margin-top:16px;color:var(--action);font-size:14px;font-weight:600;text-decoration:none}.brain-button-learn-link:hover{text-decoration:underline}.brain-button-controls{display:flex;gap:10px}.about-intro-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,260px);align-items:start;gap:48px}.about-paragraph{max-width:640px;color:var(--support);font-size:16px;line-height:1.6}.life-beyond-work{margin-top:40px}.life-photo-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px 12px}.life-photo{min-width:0}.life-photo--feature{grid-column:span 2;grid-row:span 2}.life-photo--feature .photo-frame,.life-photo--feature .photo-frame-visual{height:100%}.life-photo--feature .photo-frame-visual{aspect-ratio:auto}.photo-frame{min-width:0}.photo-frame-visual{position:relative;aspect-ratio:4 / 3;overflow:hidden;border-radius:6px;background:linear-gradient(145deg,#0c2d44,var(--rail-bg))}.photo-frame-visual:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;box-shadow:inset 0 0 0 1px #f4f4f714;pointer-events:none}.photo-frame--portrait .photo-frame-visual{aspect-ratio:4 / 5}.photo-frame-visual img{display:block;width:100%;height:100%;object-fit:cover}.photo-placeholder{width:100%;height:100%;min-height:120px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--support);font-size:12px;letter-spacing:.04em;outline:1px solid var(--border);outline-offset:-12px}.working-style{margin-top:48px}.working-style-title{font-family:var(--font-display);font-weight:700;font-size:22px;margin:0 0 12px;color:var(--fg)}.working-style-intro{max-width:640px;margin:0 0 28px;font-size:16px;line-height:1.6;color:var(--support)}.working-style-values{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 24px;margin:0}.working-style-value{padding-top:14px;border-top:1px solid var(--border)}.working-style-value dt{font-weight:700;font-size:15px;line-height:1.35;color:var(--fg);margin-bottom:6px}.working-style-value dd{margin:0;color:var(--support);font-size:14px;line-height:1.5}.build-with-me-body{max-width:560px;color:var(--support);font-size:16px;line-height:1.6;margin-bottom:36px}.build-with-me-contact{display:inline-flex;align-items:center;gap:12px;margin-bottom:32px;padding:14px 18px;border:1px solid var(--border);border-radius:12px;color:var(--fg);text-decoration:none}.build-with-me-contact:hover,.build-with-me-contact:focus-visible{border-color:var(--action)}.build-with-me-contact-label{display:block;font-size:12px;font-weight:600;letter-spacing:.1em;color:var(--support)}.build-with-me-contact-email{display:block;font-size:16px;font-weight:600;color:var(--action)}.conversation-draft{max-width:560px;border:1px solid var(--border);border-radius:14px;padding:28px}.conversation-draft-label{font-size:12px;font-weight:600;letter-spacing:.1em;color:var(--support);margin:0 0 16px}.conversation-starters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.conversation-starter{background:#f4f4f708;border:1px solid var(--border);border-radius:999px;padding:10px 16px;color:var(--support);font-size:13px;font-weight:600;cursor:pointer}.conversation-starter[aria-pressed=true]{border-color:var(--action);color:var(--fg);background:#69b5fa1a}.conversation-draft-message-label{display:block;font-size:13px;color:var(--support);margin-bottom:8px}.conversation-draft-message{width:100%;background:#f4f4f70a;border:1px solid var(--border);border-radius:10px;color:var(--fg);padding:12px;font-family:var(--font-body);font-size:14px;resize:vertical}.conversation-draft-message:disabled{opacity:.5}.conversation-draft-privacy{font-size:12px;color:var(--support);margin:12px 0 16px}.conversation-draft-actions{display:flex;gap:10px}.conversation-draft-status{min-height:18px;font-size:13px;color:var(--action);margin:12px 0 0}.story-overlay-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#03080eb3;display:flex;align-items:center;justify-content:center;padding:24px;z-index:200}.story-overlay-panel{position:relative;background:var(--rail-bg);border:1px solid var(--border);border-radius:16px;padding:40px;max-width:620px;width:100%;max-height:85vh;overflow-y:auto}.story-overlay-close{position:absolute;top:20px;right:20px;background:none;border:none;color:var(--support);cursor:pointer;padding:6px;border-radius:6px}.story-overlay-close:hover,.story-overlay-close:focus-visible{color:var(--fg)}.story-overlay-kicker{font-size:12px;font-weight:600;letter-spacing:.14em;color:var(--support);margin:0 0 12px}.story-overlay-title{font-family:var(--font-display);font-size:32px;font-weight:700;margin:0 0 12px;color:var(--fg);padding-right:30px}.story-overlay-summary{color:var(--action);font-size:15px;margin:0 0 20px}.story-overlay-paragraph{color:var(--support);font-size:15px;line-height:1.7}.story-overlay-status{color:var(--support);font-size:13px;font-weight:600;letter-spacing:.02em}.story-overlay-lenses{margin-top:20px}.story-overlay-lenses-label{font-size:12px;font-weight:600;color:var(--support);letter-spacing:.08em}.story-overlay-lenses ul{margin:8px 0 0;padding-left:18px;color:var(--fg)}.story-overlay-action{margin-top:24px;width:fit-content}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}@media(max-width:1219px){.app-shell{flex-direction:column}.rail{display:none}.mobile-header{display:block;position:sticky;top:0;z-index:50;background:var(--rail-bg);border-bottom:1px solid var(--border)}.mobile-header-bar{display:flex;align-items:center;justify-content:space-between;padding:16px 20px}.mobile-header-identity{margin:0;font-family:var(--font-display);font-size:18px;color:var(--fg)}.mobile-header-identity span{display:block;font-family:var(--font-body);font-size:12px;letter-spacing:.08em;color:var(--support);text-transform:uppercase}.mobile-header-toggle{background:none;border:1px solid var(--border);border-radius:8px;color:var(--fg);padding:8px;display:inline-flex;cursor:pointer}.mobile-nav-drawer{border-top:1px solid var(--border);padding:20px;background:var(--rail-bg);max-height:calc(100dvh - 74px);overflow-y:auto}.mobile-nav-close{display:flex;align-items:center;justify-content:center;gap:8px;margin:0 0 18px auto;padding:10px 12px;min-height:44px;background:none;border:1px solid var(--border);border-radius:6px;cursor:pointer}.overview,.selected-work,.side-projects,.about,.build-with-me{padding:64px 24px}section[id],.work-group[id],.case-study[id],.life-beyond-work[id],.working-style[id]{scroll-margin-top:88px}.overview-columns,.case-study{grid-template-columns:1fr}.working-style-values{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.life-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.life-photo--feature{grid-column:1 / -1;grid-row:auto}.life-photo--feature .photo-frame,.life-photo--feature .photo-frame-visual{height:auto}.life-photo--feature .photo-frame-visual{aspect-ratio:4 / 3}}@media(max-width:640px){.about-intro-grid{grid-template-columns:1fr;gap:28px}.photo-frame--portrait{width:min(100%,260px)}.timeline-item{grid-template-columns:80px 1fr}.story-overlay-panel{padding:28px 20px}.overview,.selected-work,.side-projects,.about,.build-with-me{padding:48px 18px}.overview-lead{font-size:18px}.overview-facts,.overview-capabilities,.working-style-values{grid-template-columns:1fr}.overview-case{grid-template-columns:minmax(0,1fr) auto}.overview-case-years{grid-column:1 / -1}.case-facet{grid-template-columns:1fr;gap:4px}}.print-resume{display:none}.rail-nav a[aria-current=location]{color:var(--fg);background:#69b5fa24;box-shadow:inset 2px 0 0 var(--action)}.hero-supporting{max-width:400px;font-size:18px;line-height:1.45}a.hero-cta{text-decoration:none}.hero--stacked .hero-headline-line{display:inline}.hero--stacked .hero-supporting{max-width:520px}.field-canvas-panel{width:360px}.map-guide{border-top:1px solid var(--border);padding-top:16px}.map-guide-title{margin:0 0 8px;font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--support)}.map-guide-line{margin:0 0 4px;font-size:15px;line-height:1.5;color:var(--support)}.map-node-ring{stroke:var(--fg);stroke-width:1.5;opacity:.9}.map-node.is-selected .map-node-label,.map-node.is-active .map-node-label{fill:#fff;font-weight:600}.map-preview{position:absolute;z-index:3;box-sizing:border-box;width:300px;max-width:calc(100% - 16px);padding:14px 16px;border:1px solid var(--border);border-radius:10px;background:#031522f5;box-shadow:0 18px 40px #00000059;cursor:pointer}.map-preview-title{margin:0 0 4px;font-family:var(--font-display);font-size:20px;font-weight:700;line-height:1.2;color:var(--fg)}.map-preview-summary{margin:0 0 8px;font-size:14px;line-height:1.45;color:var(--support)}.map-preview-action{margin:0;font-size:13px;font-weight:600;color:var(--action)}.field-guide-explore{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:24px;border-top:1px solid var(--border)}.field-guide-explore-title{margin:0;font-family:var(--font-display);font-size:22px;font-weight:700;color:var(--fg)}.topic-list{gap:0;border-top:1px solid var(--border)}.topic-list-region{border-bottom:1px solid var(--border)}.topic-list-region-title{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;margin:0;font-size:18px;font-weight:700;cursor:pointer;list-style:none}.topic-list-region-title::-webkit-details-marker{display:none}.topic-list-region-count{font-family:var(--font-body);font-size:12px;font-weight:600;color:var(--support);border:1px solid var(--border);border-radius:999px;padding:2px 9px}.topic-list-region[open] .topic-list-region-count{color:var(--action);border-color:var(--action)}.topic-list-region ul{padding-bottom:16px}a.overview-case{text-decoration:none;box-sizing:border-box}.overview-print{margin-top:28px}.work-group-kicker{margin:0 0 16px;font-family:var(--font-body);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--support)}.selected-work .work-group-intro{margin-bottom:0}.side-projects-intro{max-width:640px;margin:-12px 0 32px}.side-projects .brain-button{margin-top:72px;padding-top:48px;border-top:1px solid var(--border);scroll-margin-top:24px}.side-projects .brain-button-caption{margin-top:0}.build-with-me-invitation{max-width:560px;margin:-20px 0 32px;font-size:16px;line-height:1.6;color:var(--fg)}@media(max-width:1219px){.side-projects .brain-button,.selected-work-grid[id]{scroll-margin-top:88px}}@media(max-width:640px){.hero--stacked{padding:36px 0 12px}.hero--stacked .hero-headline{font-size:40px;line-height:1.04}.hero-cta{min-width:0}.side-projects .brain-button{margin-top:48px;padding-top:36px}.brain-button-controls,.conversation-draft-actions{flex-wrap:wrap}}@media print{@page{margin:14mm 15mm}html,body{background:#fff!important;color:#111;min-width:0}.app-shell,.story-overlay-backdrop,.skip-link{display:none!important}.print-resume{display:block;font-family:var(--font-body);font-size:10pt;line-height:1.45;color:#111}.print-resume p{margin:0 0 6pt}.print-resume-header{display:flex;justify-content:space-between;align-items:flex-end;gap:16pt;padding-bottom:8pt;margin-bottom:10pt;border-bottom:1.5pt solid #111}.print-resume-name{font-family:var(--font-display);font-size:26pt;font-weight:700;line-height:1.05;margin:0 0 2pt!important}.print-resume-headline{font-size:11pt;color:#333;margin:0!important}.print-resume-contact{font-weight:600;white-space:nowrap;margin:0!important}.print-resume-summary{font-size:11pt;margin-bottom:12pt!important}.print-resume-columns{display:grid;grid-template-columns:1.7fr 1fr;gap:22pt}.print-resume h2{font-family:var(--font-body);font-size:8.5pt;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#444;margin:12pt 0 5pt;padding-bottom:2pt;border-bottom:.5pt solid #999}.print-resume h2:first-child{margin-top:0}.print-resume ul{list-style:none;margin:0 0 6pt;padding:0}.print-resume-experience li{display:grid;grid-template-columns:70pt 1fr;gap:8pt;margin-bottom:4pt}.print-resume-years,.print-resume-note{color:#555}.print-resume-work{margin-bottom:7pt;break-inside:avoid}.print-resume-work p{margin-bottom:1pt}.print-resume-capabilities li{margin-bottom:2.5pt}}@media(min-width:1220px){.build-with-me{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,560px);gap:64px;align-items:start}}@media screen{.build-with-me-intro .section-title{max-width:520px}}.compact-map-frame{width:max(100%,820px);height:auto;aspect-ratio:1270 / 1056}
