@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/f639721981034f88-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/9766a7e9e2e0ad5a-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/b66cf8e69499582a-s.woff2) format("woff2");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:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/aa016aab0e6d1295-s.woff2) format("woff2");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:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/22a5144ee8d83bca-s.p.woff2) format("woff2");unicode-range:u+00??,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:Geist Fallback;src:local("Arial");ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.00%;size-adjust:104.76%}.__className_246ccd{font-family:Geist,Geist Fallback;font-style:normal}.__variable_246ccd{--font-display:"Geist","Geist Fallback"}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/013b72fa676f92e0-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/b9408752a0c24fb9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/65f03d54ccadf4a8-s.woff2) format("woff2");unicode-range:u+2000-2001,u+2004-2008,u+200a,u+23b8-23bd,u+2500-259f}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e038a29029a234f2-s.woff2) format("woff2");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:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/2b5b02fc7e511755-s.woff2) format("woff2");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:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/7d4881bb7e1bf84d-s.p.woff2) format("woff2");unicode-range:u+00??,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:Geist Mono Fallback;src:local("Arial");ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.00%;size-adjust:134.59%}.__className_c29908{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.__variable_c29908{--font-mono:"Geist Mono","Geist Mono Fallback"}

/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer theme{:host,:root{--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.static{position:static}.block{display:block}.hidden{display:none}.resize{resize:both}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--background:#fff;--foreground:#090909;--foreground-muted:#09090999;--foreground-subtle:#09090966;--border:#09090924;--border-medium:#09090942;--border-strong:#09090980;--surface:#fff;--surface-translucent:#ffffffe6;--selection-background:#090909;--selection-foreground:#fff;--container:min(1320px,calc(100vw - clamp(32px, 6vw, 120px)));--section-space:clamp(64px,9vw,132px);--gap:clamp(16px,2vw,28px);--motion-fast:.18s;--motion-normal:.3s;--motion-slow:.5s;--ease-standard:cubic-bezier(.2,0,0,1);--ease-entrance:cubic-bezier(.16,1,.3,1);--ease-mechanical:cubic-bezier(.65,0,.35,1);--anchor-offset:96px}html[data-theme=dark]{color-scheme:dark;--background:#111110;--foreground:#f5f4ef;--foreground-muted:#f5f4efa3;--foreground-subtle:#f5f4ef6e;--border:#f5f4ef29;--border-medium:#f5f4ef4d;--border-strong:#f5f4ef8f;--surface:#181817;--surface-translucent:#181817e6;--selection-background:#f5f4ef;--selection-foreground:#111110}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--anchor-offset);scrollbar-color:var(--foreground) #09090914;scrollbar-width:thin}body,html{overflow-x:hidden}body{background:var(--background);color:var(--foreground);font-family:var(--font-display),ui-sans-serif,system-ui,sans-serif;text-rendering:optimizelegibility;margin:0}::view-transition-old(root){mix-blend-mode:normal;animation:none!important}::view-transition-new(root){mix-blend-mode:normal;animation:none!important}::view-transition-group(root){mix-blend-mode:normal;animation:none!important}::view-transition-image-pair(root){mix-blend-mode:normal;animation:none!important}::view-transition-new(root){z-index:2}::view-transition-old(root){z-index:1}html[data-theme-transition=to-light]::view-transition-new(root){z-index:1}html[data-theme-transition=to-light]::view-transition-old(root){z-index:2}@keyframes theme-reveal-to-dark{0%{clip-path:circle(0 at var(--theme-reveal-x) var(--theme-reveal-y))}to{clip-path:circle(var(--theme-reveal-radius) at var(--theme-reveal-x) var(--theme-reveal-y))}}@keyframes theme-reveal-to-light{0%{clip-path:circle(var(--theme-reveal-radius) at var(--theme-reveal-x) var(--theme-reveal-y))}to{clip-path:circle(0 at var(--theme-reveal-x) var(--theme-reveal-y))}}html[data-theme-transition=to-dark]::view-transition-new(root){animation:theme-reveal-to-dark .72s cubic-bezier(.76,0,.24,1) both!important}html[data-theme-transition=to-light]::view-transition-old(root){animation:theme-reveal-to-light .72s cubic-bezier(.76,0,.24,1) both!important}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-track{background:#0909090f}::-webkit-scrollbar-thumb{border:3px solid var(--background);background:var(--foreground);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#090909b8}.scroll-locked{overflow:hidden}::selection{background:var(--selection-background);color:var(--selection-foreground)}a{color:inherit;text-decoration:none}a,button{-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid var(--foreground);outline-offset:4px}.sr-only{clip:rect(0,0,0,0);width:1px;height:1px;position:absolute;overflow:hidden}.skip-link{z-index:1000;border:1px solid var(--foreground);background:var(--background);padding:10px 14px;position:fixed;top:12px;left:12px;transform:translateY(-140%)}.skip-link:focus{transform:translateY(0)}.site-header{top:max(18px,env(safe-area-inset-top));z-index:100;border:1px solid var(--border-medium);background-color:var(--background);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);transition:top var(--motion-normal) var(--ease-standard),border-color var(--motion-normal) var(--ease-standard),background var(--motion-normal) var(--ease-standard),padding var(--motion-normal) var(--ease-standard);grid-template-columns:auto 1fr auto auto;align-items:center;gap:20px;padding:10px 12px 10px 18px;display:grid;position:fixed;left:clamp(18px,5vw,72px);right:clamp(18px,5vw,72px)}.site-header-compressed{top:max(8px,env(safe-area-inset-top));border-color:var(--border-strong);background-color:var(--background);padding-block:7px}.scroll-progress{z-index:1100;transform-origin:0;background:var(--foreground);pointer-events:none;height:3px;position:fixed;top:0;left:0;right:0;transform:scaleX(0)}@media (min-width:761px){.scroll-progress{display:block}}.button,.metadata,.mobile-menu-button,.mobile-menu-close,.nav-contact-action,.section-label,.site-brand,.technical-label{font-family:var(--font-mono),ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:650}.theme-toggle{border:1px solid var(--border-medium);background:var(--background);width:36px;height:36px;color:var(--foreground);cursor:pointer;transition:border-color var(--motion-fast) var(--ease-standard),background var(--motion-fast) var(--ease-standard),color var(--motion-fast) var(--ease-standard);place-items:center;display:inline-grid}.theme-toggle:focus-visible,.theme-toggle:hover{border-color:var(--foreground);background:var(--foreground);color:var(--background)}.theme-toggle:disabled{cursor:wait}.theme-toggle svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7px;width:15px;height:15px;transition:transform .36s var(--ease-entrance),opacity .18s var(--ease-standard)}.theme-toggle.is-dark svg{transform:rotate(80deg)scale(1.04)}.desktop-nav{justify-content:center;gap:clamp(12px,2vw,28px);display:flex}.desktop-nav a,.site-footer a{color:var(--foreground-muted);font-family:var(--font-mono),ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid #0000;font-size:.72rem}.desktop-nav a{transition:border-color var(--motion-fast) var(--ease-standard),color var(--motion-fast) var(--ease-standard);padding:7px 9px}.desktop-nav a:hover,.desktop-nav a[aria-current=true],.site-footer a:hover{border-color:var(--foreground);color:var(--foreground)}.desktop-nav a:focus-visible,.desktop-nav a:hover{background-image:repeating-linear-gradient(135deg,transparent 0,transparent 8px,var(--foreground) 8px,var(--foreground) 9px)}@supports (color:color-mix(in lab,red,red)){.desktop-nav a:focus-visible,.desktop-nav a:hover{background-image:repeating-linear-gradient(135deg,transparent 0,transparent 8px,color-mix(in srgb,var(--foreground) 20%,transparent) 8px,color-mix(in srgb,var(--foreground) 20%,transparent) 9px)}}.desktop-nav a:focus-visible,.desktop-nav a:hover{background-size:14px 14px;animation:experience-hatch-drift .72s linear infinite}.mobile-menu-button,.mobile-menu-close,.nav-contact-action{border:1px solid var(--foreground);background:var(--foreground);min-height:44px;color:var(--background);cursor:pointer;justify-content:center;align-items:center;padding:0 16px;display:inline-flex}.mobile-nav{display:none}.mobile-menu{z-index:90;background:var(--background);padding:max(76px,calc(env(safe-area-inset-top) + 66px)) 12px 12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:menu-enter var(--motion-normal) var(--ease-entrance) both;background:#09090929;justify-content:flex-end;align-items:flex-start;display:flex;position:fixed;inset:0}.mobile-menu.is-closing{animation:menu-enter var(--motion-normal) var(--ease-entrance) reverse both;animation-duration:.68s}.mobile-menu-panel{border:1px solid var(--foreground);background:var(--background);width:min(100%,410px);overflow:hidden;box-shadow:0 18px 55px #09090921}.mobile-menu-panel>header{border-bottom:1px solid var(--border-medium);min-height:48px;font-family:var(--font-mono),ui-monospace,monospace;letter-spacing:.08em;justify-content:space-between;align-items:center;padding-left:14px;font-size:.65rem;font-weight:700;display:flex}.mobile-menu-panel .mobile-menu-close{border-width:0 0 0 1px;min-height:48px}.mobile-menu-panel nav{display:grid}.mobile-menu-panel nav a{border-bottom:1px solid var(--border-medium);letter-spacing:0;animation:menu-item-enter var(--motion-slow) var(--ease-entrance) both;grid-template-columns:30px 1fr auto;align-items:center;gap:10px;padding:13px 14px;font-size:clamp(1.05rem,5.2vw,1.35rem);font-weight:750;line-height:1;display:grid}.mobile-menu-panel nav a:last-child{border-bottom:0}.mobile-menu-panel nav a:focus-visible,.mobile-menu-panel nav a:hover{background:var(--foreground);color:var(--background)}.mobile-menu-panel nav a small{font-family:var(--font-mono),ui-monospace,monospace;opacity:.6;font-size:.6rem;font-weight:500}.mobile-menu-panel nav a:nth-child(2){animation-delay:45ms}.mobile-menu-panel nav a:nth-child(3){animation-delay:90ms}.mobile-menu-panel nav a:nth-child(4){animation-delay:.135s}.mobile-menu-panel nav a:nth-child(5){animation-delay:.18s}.mobile-menu.is-closing .mobile-menu-panel nav a{animation-name:menu-item-enter;animation-direction:reverse;animation-delay:0s}.mobile-menu.is-closing .mobile-menu-panel nav a:first-child{animation-delay:.18s}.mobile-menu.is-closing .mobile-menu-panel nav a:nth-child(2){animation-delay:.135s}.mobile-menu.is-closing .mobile-menu-panel nav a:nth-child(3){animation-delay:90ms}.mobile-menu.is-closing .mobile-menu-panel nav a:nth-child(4){animation-delay:45ms}.contact-actions,.hero-actions,.project-actions{flex-wrap:wrap;gap:12px;display:flex}.hero-actions{overflow:visible;clip-path:none!important}.button{border:1px solid var(--foreground);will-change:transform;border-radius:2px;justify-content:center;align-items:center;min-height:44px;padding:0 18px;transition:background .16s,color .16s,border-color .16s,transform .16s;display:inline-flex}.button:hover{transform:translateY(-1px)}.button-external,.button-primary{background:var(--foreground);color:var(--background)}.button-external:hover,.button-ghost:hover,.button-icon:hover,.button-primary:hover,.button-secondary{background:var(--background);color:var(--foreground)}.button-ghost:hover,.button-icon:hover,.button-secondary:hover{background:var(--foreground);color:var(--background)}.button-ghost,.button-icon,.button-secondary{background:var(--background);color:var(--foreground)}.button-text{border-color:#0000;border-bottom-color:var(--foreground);min-height:32px;color:var(--foreground);background:0 0;padding-inline:0}.button-small{min-height:36px;padding-inline:12px}.button-large{min-height:52px;padding-inline:24px}.button[aria-disabled=true],.button[disabled]{border-color:var(--border-medium);background:var(--background);color:var(--foreground-muted);cursor:not-allowed;transform:none}main{isolation:isolate}.case-study,.hero-section,.portfolio-section{width:var(--container);margin-inline:auto}.hero-section{align-items:center;gap:var(--gap);grid-template-columns:minmax(0,1.1fr) minmax(300px,.72fr);min-height:100svh;padding-top:82px;padding-bottom:28px;display:grid}.hero-copy{gap:clamp(14px,2.1vh,22px);display:grid}.hero-entrance>*{will-change:transform,opacity}.hero-meta{color:var(--foreground-muted);font-family:var(--font-mono),ui-monospace,monospace;letter-spacing:.08em;flex-wrap:wrap;gap:12px 20px;font-size:.75rem;display:flex}.hero-greeting{margin:0;font-size:clamp(.92rem,1.4vw,1.12rem);font-weight:650}.hero-section h1{letter-spacing:0;max-width:820px;margin:0;font-size:clamp(2.8rem,7.4vw,6.6rem);font-weight:820;line-height:.9}.hero-section h1 span{display:block}.hero-type-line{white-space:nowrap;min-height:.9em}.hero-section h1 .hero-terminal-mark{animation:hero-terminal-mark .32s var(--ease-entrance) both;display:inline-block}.engineering-system{border:1px solid var(--border-medium);background-color:var(--background);background-image:repeating-linear-gradient(135deg,transparent 0,transparent 12px,var(--foreground) 12px,var(--foreground) 13px);justify-self:end;width:min(100%,620px);margin:0;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.engineering-system{background-image:repeating-linear-gradient(135deg,transparent 0,transparent 12px,color-mix(in srgb,var(--foreground) 10%,transparent) 12px,color-mix(in srgb,var(--foreground) 10%,transparent) 13px)}}.engineering-system{transition:border-color var(--motion-normal) var(--ease-standard);background-size:18px 18px;padding:clamp(12px,2vw,22px);animation:experience-hatch-drift 4.8s linear infinite}.engineering-system:focus-within,.engineering-system:hover{border-color:var(--foreground)}.engineering-system svg,.project-cover{width:100%;height:auto}.engineering-system line,.engineering-system rect,.project-cover circle,.project-cover line{vector-effect:non-scaling-stroke}.project-cover line{stroke:var(--border-strong);stroke-width:1px}.system-lines line{transform-box:fill-box;transition:opacity var(--motion-normal) var(--ease-standard),stroke var(--motion-normal) var(--ease-standard)}.engineering-system text,.project-cover text{fill:var(--foreground);font-family:var(--font-mono),ui-monospace,monospace;letter-spacing:.08em;font-size:10px;font-weight:700}.engineering-system .system-core-caption,.engineering-system .system-footer,.engineering-system .system-kicker{font-size:9px}.engineering-system .system-field{fill:var(--background);stroke:var(--foreground)}.engineering-system .system-grid{fill:none}.engineering-system .system-grid line{stroke:var(--border-medium);stroke-width:1px}.engineering-system .system-output rect,.engineering-system .system-sources rect{fill:var(--background);stroke:var(--foreground)}.engineering-system .system-connections line{stroke:var(--foreground);stroke-width:1.2px;stroke-dasharray:2 3;animation:system-flow 4s linear infinite}.engineering-system .system-connections .system-shared-link{stroke:var(--foreground);stroke-width:1.6px;stroke-dasharray:none;opacity:.58;animation:none}.engineering-system .system-connections line.is-active{stroke-width:2px;opacity:1}.engineering-system .system-core circle:first-child{fill:var(--background);stroke:var(--foreground);stroke-width:1px}.engineering-system .system-core circle:nth-child(2){fill:none;stroke:var(--border-medium);stroke-width:1px}.engineering-system .system-core circle:nth-child(3){fill:var(--foreground)}.engineering-system .system-core-label,.engineering-system .system-output-label{font-size:11px}.engineering-system .system-project-nodes circle{fill:var(--foreground);stroke:var(--background);stroke-width:1px;transition:fill var(--motion-fast) var(--ease-standard),stroke-width var(--motion-fast) var(--ease-standard),transform var(--motion-fast) var(--ease-standard)}.engineering-system .system-project-nodes>g{cursor:default;outline:none}.engineering-system .system-project-nodes>g.is-active circle,.engineering-system .system-project-nodes>g:focus circle,.engineering-system .system-project-nodes>g:hover circle{fill:var(--background);stroke:var(--foreground);stroke-width:2px}.engineering-system .system-footer{fill:var(--foreground-muted)}.engineering-system figcaption{color:var(--foreground-muted);font-family:var(--font-mono),ui-monospace,monospace;text-transform:uppercase;margin-top:12px;font-size:.7rem}.system-node.is-active rect,.system-node:focus rect,.system-node:hover rect{fill:var(--foreground)}.system-node.is-active text,.system-node:focus text,.system-node:hover text{fill:var(--background)}.system-has-active-node .system-node:not(.is-active){opacity:.48!important}.system-lines line.is-active{stroke:var(--foreground);stroke-width:1.8px}.svg-meta{opacity:.55}.portfolio-section{padding-block:var(--section-space);border-top:1px solid var(--border)}.section-heading{gap:var(--gap);grid-template-columns:minmax(160px,.24fr) minmax(0,1fr) auto;margin-bottom:clamp(42px,7vw,84px);display:grid}.section-heading h2{letter-spacing:0;max-width:1050px;margin:0;font-size:clamp(1.9rem,4.8vw,5.2rem);line-height:1}.section-description{max-width:720px;font-size:clamp(1rem,1.5vw,1.25rem)}.section-description,.section-label{color:var(--foreground-muted)}.case-study-hero,.contact-grid,.identity-grid,.philosophy-grid{gap:var(--gap);grid-template-columns:minmax(0,1fr) minmax(320px,.7fr);display:grid}.contact-grid>p,.identity-statement,.philosophy-grid>p{letter-spacing:0;margin:0;font-size:clamp(1.55rem,3.8vw,4rem);font-weight:760;line-height:1.02}.stats-grid{border:1px solid var(--border);grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0;display:grid}.stats-grid div{background:var(--background);min-height:96px;padding:16px}.stats-grid div:nth-child(odd){border-right:1px solid var(--border-medium)}.stats-grid div:nth-child(-n+2){border-bottom:1px solid var(--border-medium)}.metadata,.stats-grid dt{color:var(--foreground-muted)}.stats-grid dd{margin:12px 0 0;font-size:clamp(1.2rem,2.5vw,2rem);font-weight:750}.capability-map{gap:var(--gap);grid-template-columns:minmax(180px,.32fr) minmax(460px,.95fr) minmax(380px,.9fr);align-items:stretch;display:grid}.capability-core,.capability-detail,.empty-state,.project-panel{border:1px solid var(--border-medium);background:var(--background)}.capability-core{letter-spacing:.1em;text-align:center;text-transform:uppercase;writing-mode:vertical-rl;place-items:center;min-height:260px;padding:24px;font-weight:800;display:grid;position:relative;transform:rotate(180deg)}.capability-core:after{border:1px solid var(--border);content:"";transform-origin:0;transition:transform var(--motion-slow) var(--ease-mechanical);position:absolute;inset:18px;transform:scaleX(0)}.capability-map:focus-within .capability-core:after,.capability-map:hover .capability-core:after{transform:scaleX(1)}.capability-nodes{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.capability-node{border:1px solid var(--border-medium);background:var(--background);min-height:52px;color:var(--foreground);cursor:pointer;transition:background var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard),color var(--motion-fast) var(--ease-standard),transform var(--motion-fast) var(--ease-standard)}.capability-node:hover,.capability-node[aria-pressed=true]{border-color:var(--foreground);background:var(--foreground);color:var(--background)}.capability-node:focus-visible,.capability-node:hover{transform:translateY(-2px)}.capability-detail{align-content:start;gap:22px;padding:clamp(22px,2.5vw,34px);display:grid}.capability-detail-header{border-bottom:1px solid var(--border-medium);justify-content:space-between;align-items:flex-start;gap:18px;padding-bottom:18px;display:flex}.capability-detail-header h3,.capability-detail-header p{margin:0}.capability-detail-header h3{max-width:430px;margin-top:7px;font-size:clamp(1.15rem,1.8vw,1.75rem);line-height:1.08}.capability-detail-header>span{border:1px solid var(--foreground);width:40px;height:40px;font-family:var(--font-mono),ui-monospace,monospace;border-radius:50%;flex:none;place-items:center;font-size:.7rem;display:grid}.capability-skill-grid{border:1px solid var(--border);background:var(--border);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.capability-skill-grid>span{background:var(--background);grid-template-columns:24px minmax(0,1fr);align-items:center;gap:8px;min-height:48px;padding:9px 11px;font-size:.78rem;line-height:1.3;display:grid}.capability-skill-grid small{color:var(--foreground-muted);font-family:var(--font-mono),ui-monospace,monospace;font-size:.58rem}.capability-projects{border-top:1px solid var(--border-medium);gap:9px;padding-top:18px;display:grid}.capability-projects p{margin:0}.capability-atlas{border-top:1px solid var(--foreground);border-bottom:1px solid var(--foreground)}.capability-atlas-header{border-bottom:1px solid var(--border-medium);justify-content:space-between;align-items:end;gap:18px;padding:14px 0;display:flex}.capability-atlas-header p{margin:0}.capability-atlas-header p:last-child,.capability-atlas-header>span,.capability-atlas-reading>header>p{font-family:var(--font-mono),ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;font-weight:700}.capability-atlas-index{border-left:1px solid var(--border-medium);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.capability-atlas-node{border:0;border-right:1px solid var(--border-medium);border-bottom:1px solid var(--border-medium);background:var(--background);min-height:102px;color:var(--foreground);cursor:pointer;text-align:left;transition:background var(--motion-fast) var(--ease-standard),color var(--motion-fast) var(--ease-standard),box-shadow var(--motion-fast) var(--ease-standard);grid-template-columns:auto 1fr auto;align-items:start;gap:12px;padding:15px;display:grid}.capability-atlas-node small,.capability-atlas-node>span{font-family:var(--font-mono),ui-monospace,monospace;letter-spacing:.07em;font-size:.62rem;font-weight:700}.capability-atlas-node>span{color:var(--foreground-muted)}.capability-atlas-node strong{max-width:270px;font-size:clamp(.98rem,1.35vw,1.28rem);font-weight:650;line-height:1.05}.capability-atlas-node:focus-visible,.capability-atlas-node:hover,.capability-atlas-node[aria-selected=true]{background:var(--foreground);color:var(--background);box-shadow:inset 0 -4px 0 var(--background)}.capability-atlas-node:focus-visible>span,.capability-atlas-node:hover>span,.capability-atlas-node[aria-selected=true]>span{color:var(--background)}@supports (color:color-mix(in lab,red,red)){.capability-atlas-node:focus-visible>span,.capability-atlas-node:hover>span,.capability-atlas-node[aria-selected=true]>span{color:color-mix(in srgb,var(--background) 68%,transparent)}}.capability-atlas-reading{border-top:1px solid var(--foreground);grid-template-columns:minmax(220px,.66fr) minmax(0,1.34fr);display:grid}.capability-atlas-reading>header{border-right:1px solid var(--border-medium);align-content:space-between;gap:24px;padding:clamp(20px,2.2vw,32px);display:grid}.capability-atlas-reading h3{letter-spacing:-.045em;margin:8px 0 0;font-size:clamp(1.55rem,3vw,3.2rem);line-height:.96}.capability-atlas-reading>header>p{color:var(--foreground-muted);margin:0}.capability-atlas-skills{grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.capability-atlas-skills li{border-right:1px solid var(--border-medium);border-bottom:1px solid var(--border-medium);grid-template-columns:30px minmax(0,1fr);align-items:center;gap:10px;min-height:58px;padding:11px 14px;font-size:.85rem;display:grid}.capability-atlas-skills li span{color:var(--foreground-muted);font-family:var(--font-mono),ui-monospace,monospace;font-size:.6rem;font-weight:700}.capability-atlas-systems{border-top:1px solid var(--foreground);grid-column:1/-1;gap:10px;padding:16px clamp(20px,2.2vw,32px);display:grid}.capability-atlas-systems p{margin:0}.capability-console{border:1px solid var(--foreground);background:var(--foreground);grid-template-columns:minmax(220px,.52fr) minmax(0,1.48fr);display:grid;overflow:hidden}.capability-console-rail{border-right:1px solid var(--background);display:grid}.capability-console-tab{border:0;border-bottom:1px solid var(--background);grid-template-columns:26px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:47px;display:grid}@supports (color:color-mix(in lab,red,red)){.capability-console-tab{border-bottom:1px solid color-mix(in srgb,var(--background) 28%,transparent)}}.capability-console-tab{background:var(--foreground);color:var(--background);cursor:pointer;text-align:left;transition:background var(--motion-fast) var(--ease-standard),color var(--motion-fast) var(--ease-standard);padding:9px 13px}.capability-console-tab:last-child{border-bottom:0}.capability-console-panel>header>span,.capability-console-skills i,.capability-console-tab>i,.capability-console-tab>span{color:var(--foreground-muted);font-family:var(--font-mono),ui-monospace,monospace;letter-spacing:.06em;font-size:.61rem;font-style:normal;font-weight:700}.capability-console-tab strong{font-size:.78rem;font-weight:650;line-height:1.1}.capability-console-tab>i,.capability-console-tab>span{color:var(--background)}@supports (color:color-mix(in lab,red,red)){.capability-console-tab>i,.capability-console-tab>span{color:color-mix(in srgb,var(--background) 55%,transparent)}}.capability-console-tab:focus-visible,.capability-console-tab:hover,.capability-console-tab[aria-selected=true]{background:var(--background);color:var(--foreground)}.capability-console-tab:focus-visible>i,.capability-console-tab:focus-visible>span,.capability-console-tab:hover>i,.capability-console-tab:hover>span,.capability-console-tab[aria-selected=true]>i,.capability-console-tab[aria-selected=true]>span{color:var(--foreground-muted)}.capability-console-panel{background:var(--background);align-content:start;display:grid}.capability-console-panel>header{border-bottom:1px solid var(--border-medium);grid-template-columns:82px minmax(0,1fr) auto;align-items:center;gap:16px;padding:13px 18px;display:grid}.capability-console-panel>footer p,.capability-console-panel>header h3,.capability-console-panel>header p,.capability-console-panel>header span{margin:0}.capability-console-panel h3{letter-spacing:-.035em;font-size:clamp(1.15rem,1.7vw,1.55rem);font-weight:600;line-height:1;margin-top:5px!important}.capability-console-signal{border:1px solid var(--foreground);background:var(--foreground);grid-template-columns:repeat(12,1fr);align-items:end;gap:3px;height:42px;padding:5px;display:grid}.capability-console-signal i{height:calc(var(--signal) * 2px);background:var(--background);display:block}.capability-console-panel>header>span{border:1px solid var(--foreground);font-family:var(--font-mono),ui-monospace,monospace;letter-spacing:.06em;padding:6px 8px;font-size:.61rem;font-weight:700}.capability-console-skills{flex-wrap:wrap;gap:7px;padding:15px 18px;display:flex}.capability-console-skills>span{border:1px solid var(--border-medium);align-items:center;gap:7px;padding:6px 8px;font-size:.76rem;line-height:1;display:inline-flex}.capability-console-skills>span:hover{border-color:var(--foreground);background:var(--foreground);color:var(--background)}.capability-console-panel footer{border-top:1px solid var(--border-medium);align-items:center;gap:14px;padding:11px 18px;display:flex}.capability-console-panel footer .inline-list{gap:5px}.capability-console-panel footer .inline-list span{padding:4px 6px;font-size:.6rem}.capability-index{border:1px solid var(--foreground)}.capability-index-grid{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.capability-index-card{border:0;border-right:1px solid var(--foreground);border-bottom:1px solid var(--foreground);background:var(--background);min-height:92px;color:var(--foreground);cursor:pointer;text-align:left;transition:background var(--motion-fast) var(--ease-standard),color var(--motion-fast) var(--ease-standard),transform var(--motion-fast) var(--ease-standard);grid-template-columns:1fr auto;align-content:space-between;gap:9px;padding:13px 15px;display:grid;position:relative;overflow:hidden}.capability-index-card:before{z-index:0;background-image:repeating-linear-gradient(135deg,transparent 0,transparent 12px,var(--capability-hatch,var(--foreground)) 12px,var(--capability-hatch,var(--foreground)) 13px);position:absolute;inset:0}@supports (color:color-mix(in lab,red,red)){.capability-index-card:before{background-image:repeating-linear-gradient(135deg,transparent 0,transparent 12px,color-mix(in srgb,var(--capability-hatch,var(--foreground)) 13%,transparent) 12px,color-mix(in srgb,var(--capability-hatch,var(--foreground)) 13%,transparent) 13px)}}.capability-index-card:before{content:"";opacity:0;pointer-events:none;transition:opacity var(--motion-fast) var(--ease-standard);background-size:18px 18px}.capability-index-card>*{z-index:1;position:relative}.capability-index-card:nth-child(3n){border-right:0}.capability-index-card:nth-last-child(-n+3){border-bottom:0}.capability-index-card>i,.capability-index-count,.capability-index-drawer-content>header>p,.capability-index-number,.capability-index-skills i{font-family:var(--font-mono),ui-monospace,monospace;letter-spacing:.07em;font-size:.62rem;font-style:normal;font-weight:700}.capability-index-number{color:var(--foreground-muted)}.capability-index-card strong{z-index:1;grid-column:1/-1;max-width:22ch;font-size:clamp(.85rem,1.1vw,1rem);font-weight:650;line-height:1.08;position:relative}.capability-index-count{color:var(--foreground-muted)}.capability-index-card>i{font-size:.88rem;line-height:1;position:absolute;bottom:12px;right:13px}.capability-index-card:focus-visible,.capability-index-card:hover{background:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.capability-index-card:focus-visible,.capability-index-card:hover{background:color-mix(in srgb,var(--foreground) 7%,var(--background))}}.capability-index-card:focus-visible:before,.capability-index-card:hover:before{opacity:1;animation:experience-hatch-drift .72s linear infinite}.capability-index-card[aria-selected=true]{--capability-hatch:var(--background);background:var(--foreground);color:var(--background)}.capability-index-card[aria-selected=true] .capability-index-count,.capability-index-card[aria-selected=true] .capability-index-number{color:var(--background)}@supports (color:color-mix(in lab,red,red)){.capability-index-card[aria-selected=true] .capability-index-count,.capability-index-card[aria-selected=true] .capability-index-number{color:color-mix(in srgb,var(--background) 60%,transparent)}}.capability-index-card[aria-selected=true]>i{transform:none}.capability-index-drawer{border-top:0 solid var(--foreground);transition:grid-template-rows .52s var(--ease-entrance),border-top-width .52s var(--ease-entrance);grid-template-rows:0fr;display:grid}.capability-index-drawer.is-open{border-top-width:1px;grid-template-rows:1fr}.capability-index-drawer-content{opacity:0;min-height:0;transition:opacity .21s var(--ease-standard),transform .32s var(--ease-entrance);grid-template-columns:repeat(3,minmax(0,1fr));display:grid;overflow:hidden;transform:translateY(-12px)}.capability-index-drawer.is-open .capability-index-drawer-content{opacity:1;transition-delay:.13s;transform:translateY(0)}.capability-index-drawer-content>header{border-right:1px solid var(--border-medium);grid-column:1;align-content:space-between;gap:15px;padding:17px;display:grid}.capability-index-drawer-content h3,.capability-index-drawer-content p{margin:0}.capability-index-drawer-content h3{letter-spacing:-.045em;margin-top:6px;font-size:clamp(1.25rem,2vw,2rem);font-weight:600;line-height:.98}.capability-index-drawer-content>header>p{color:var(--foreground-muted)}.capability-index-skills{flex-wrap:wrap;grid-column:2/-1;align-content:center;gap:7px;padding:17px;display:flex}.capability-index-skills>span{border-bottom:1px solid var(--border-medium);align-items:center;gap:7px;padding:5px 0;font-size:.78rem;display:inline-flex}.capability-index-skills i{color:var(--foreground-muted)}.capability-index-drawer-content footer{border-top:1px solid var(--border-medium);grid-column:1/-1;align-items:center;gap:12px;padding:10px 17px;display:flex}.capability-index-drawer-content footer p{flex:none}.capability-index-drawer-content footer .inline-list{gap:5px}.capability-index-drawer-content footer .inline-list span{padding:4px 6px;font-size:.6rem}.badge-row,.inline-list{flex-wrap:wrap;gap:8px;display:flex}.badge,.inline-list span{border:1px solid var(--border-medium);font-family:var(--font-mono),ui-monospace,monospace;text-transform:uppercase;padding:7px 9px;font-size:.72rem}.experience-timeline{gap:32px;display:grid}.timeline-markers{border-top:1px solid var(--foreground);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.timeline-marker{border:0;border-right:1px solid var(--border-medium);background:var(--background);min-height:112px;color:var(--foreground);text-align:left;cursor:pointer;transition:background var(--motion-fast) var(--ease-standard),color var(--motion-fast) var(--ease-standard),transform var(--motion-fast) var(--ease-standard);padding:18px}.timeline-marker:hover,.timeline-marker[aria-selected=true]{background:var(--foreground);color:var(--background)}.timeline-marker[aria-selected=true]{transform:translateY(-3px)}.timeline-marker small,.timeline-marker span{display:block}.experience-detail{border:1px solid var(--border-medium);padding:clamp(24px,4vw,48px)}.case-study h1,.experience-detail h3,.project-panel h3{letter-spacing:0;margin:0;font-size:clamp(1.6rem,3.8vw,4.2rem);line-height:1}.case-study-grid,.detail-columns{gap:var(--gap);grid-template-columns:repeat(3,minmax(0,1fr));margin-block:28px;display:grid}.detail-columns{grid-template-columns:repeat(4,minmax(0,1fr))}.detail-columns ol,.detail-columns p{margin:0;font-size:.9rem;line-height:1.48}.detail-columns ol{padding-left:1.55rem}.detail-columns li+li{margin-top:.35rem}.detail-columns li::marker{font-family:var(--font-mono),ui-monospace,monospace;font-size:.7em;font-weight:700}.experience-accordions li::marker{font-family:var(--font-mono),ui-monospace,monospace;font-size:.7em;font-weight:700}.experience-accordions,.project-technology-more{display:none}.experience-archive{border-top:1px solid var(--foreground)}.experience-record{border-bottom:1px solid var(--border-medium)}.experience-record-trigger{background:var(--background);width:100%;min-height:112px;color:var(--foreground);cursor:pointer;text-align:left;transition:background var(--motion-fast) var(--ease-standard),color var(--motion-fast) var(--ease-standard),padding var(--motion-fast) var(--ease-standard),box-shadow var(--motion-normal) var(--ease-standard);border:0;grid-template-columns:72px minmax(0,1.3fr) minmax(150px,.72fr) auto;align-items:center;gap:20px;padding:20px 0;text-decoration:none;display:grid;position:relative}.experience-record-trigger:before{z-index:0;background-image:repeating-linear-gradient(135deg,transparent 0,transparent 12px,var(--foreground) 12px,var(--foreground) 13px);position:absolute;inset:0}@supports (color:color-mix(in lab,red,red)){.experience-record-trigger:before{background-image:repeating-linear-gradient(135deg,transparent 0,transparent 12px,color-mix(in srgb,var(--foreground) 13%,transparent) 12px,color-mix(in srgb,var(--foreground) 13%,transparent) 13px)}}.experience-record-trigger:before{content:"";opacity:0;pointer-events:none;transition:opacity var(--motion-fast) var(--ease-standard);background-size:18px 18px}.experience-record-trigger>*{z-index:1;position:relative}.experience-record-trigger:focus-visible,.experience-record-trigger:hover,.experience-record.is-open .experience-record-trigger{background:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.experience-record-trigger:focus-visible,.experience-record-trigger:hover,.experience-record.is-open .experience-record-trigger{background:color-mix(in srgb,var(--foreground) 4%,var(--background))}}.experience-record-trigger:focus-visible,.experience-record-trigger:hover,.experience-record.is-open .experience-record-trigger{color:var(--foreground);box-shadow:none}.experience-record-trigger:focus-visible:before,.experience-record-trigger:hover:before{opacity:1;animation:experience-hatch-drift .72s linear infinite}.experience-record-trigger>span{transition:transform var(--motion-normal) var(--ease-standard)}.experience-record-trigger:focus-visible .experience-record-index,.experience-record-trigger:hover .experience-record-index,.experience-record.is-open .experience-record-index{transform:translate(2px)}.experience-record-trigger:focus-visible .experience-record-role,.experience-record-trigger:hover .experience-record-role,.experience-record.is-open .experience-record-role{transform:translate(3px)}.experience-record-index,.experience-record-period,.experience-record-state{font-family:var(--font-mono),ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;font-weight:700}.experience-record-role{gap:5px;display:grid}.experience-record-role strong{letter-spacing:-.03em;font-size:clamp(1.15rem,2vw,1.7rem);font-weight:700;line-height:1}.experience-record-role small{color:var(--foreground-muted);font-family:var(--font-mono),ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;font-weight:700}.experience-record-trigger:focus-visible .experience-record-role small,.experience-record-trigger:hover .experience-record-role small,.experience-record.is-open .experience-record-role small{color:var(--foreground-muted)}.experience-record-state{white-space:nowrap;min-width:0;min-height:0;color:var(--foreground-muted);transition:color var(--motion-fast) var(--ease-standard),letter-spacing var(--motion-fast) var(--ease-standard);justify-content:end;align-items:center;gap:7px;display:inline-flex}.experience-record-trigger:focus-visible .experience-record-state,.experience-record-trigger:hover .experience-record-state,.experience-record.is-open .experience-record-state{color:var(--foreground);letter-spacing:.12em;background:0 0}.experience-record-state i{transition:transform var(--motion-normal) var(--ease-standard);font-size:.9rem;font-style:normal;transform:translate(-3px,2px)}.experience-record-trigger:focus-visible .experience-record-state i,.experience-record-trigger:hover .experience-record-state i,.experience-record.is-open .experience-record-state i{transform:translate(0)}.experience-record-content{overflow:hidden}.experience-record-content-inner{border-top:1px solid var(--foreground);grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr) repeat(3,minmax(0,.72fr));gap:0;display:grid}.experience-challenge,.experience-list-block,.experience-overview,.experience-stack{border-right:1px solid var(--border-medium);min-width:0;padding:22px 18px}.experience-stack{border-top:1px solid var(--border-medium);border-right:0;grid-column:1/-1}.experience-challenge>p:last-child,.experience-overview>p:last-child{color:var(--foreground-muted);margin:10px 0 0;font-size:.92rem;line-height:1.5}.experience-list-block ol{margin:10px 0 0;padding-left:18px;font-size:.82rem;line-height:1.48}.experience-list-block li+li{margin-top:6px}.experience-list-block li::marker{font-family:var(--font-mono),ui-monospace,monospace;font-size:.72em;font-weight:700}.experience-stack .inline-list{margin-top:10px}.experience-case-study{width:var(--container);padding-block:clamp(120px,13vw,180px) var(--section-space);margin-inline:auto}.experience-case-study-intro{padding-bottom:0}.experience-case-study-header{isolation:isolate;border-bottom:1px solid var(--foreground);margin-top:28px;padding-bottom:clamp(24px,3vw,42px);position:relative}.experience-case-study-header:before{z-index:-1;background-color:var(--background);background-image:repeating-linear-gradient(135deg,transparent 0,transparent 12px,var(--foreground) 12px,var(--foreground) 13px);width:100vw;position:absolute;inset:-22px 0 -22px 50%;transform:translate(-50%)}@supports (color:color-mix(in lab,red,red)){.experience-case-study-header:before{background-image:repeating-linear-gradient(135deg,transparent 0,transparent 12px,color-mix(in srgb,var(--foreground) 16%,transparent) 12px,color-mix(in srgb,var(--foreground) 16%,transparent) 13px)}}.experience-case-study-header:before{content:"";pointer-events:none;background-size:18px 18px;animation:experience-hatch-drift 4.6s linear infinite}.experience-case-study-header h1{letter-spacing:-.055em;margin:14px 0 0;font-size:clamp(2.4rem,6vw,6.2rem);line-height:.9}.experience-case-study-organization{margin:14px 0 0;font-size:clamp(1.1rem,2vw,1.6rem);font-weight:650}.experience-case-study-header .metadata{margin:12px 0 0}.experience-case-study-grid{border:1px solid var(--border-medium);grid-template-columns:repeat(6,minmax(0,1fr));margin-top:clamp(24px,3vw,42px);display:grid}.experience-case-study-grid>section{border-right:1px solid var(--border-medium);border-bottom:1px solid var(--border-medium);min-width:0;padding:clamp(18px,2vw,28px)}.experience-case-study-grid>section:first-child,.experience-case-study-grid>section:nth-child(2){grid-column:span 3}.experience-case-study-list{grid-column:span 2}.experience-case-study-grid>section:last-child,.experience-case-study-grid>section:nth-child(2),.experience-case-study-grid>section:nth-child(5){border-right:0}.experience-case-study-grid>section:nth-last-child(-n+2){border-bottom:0}.experience-case-study-grid ol,.experience-case-study-grid section>p:last-child{color:var(--foreground-muted);margin:12px 0 0;font-size:clamp(1.05rem,1.25vw,1.18rem);line-height:1.62}.experience-case-study-grid ol{padding-left:22px;font-size:clamp(.98rem,1.1vw,1.08rem);line-height:1.55;list-style:decimal}.experience-case-study-grid li+li{margin-top:7px}.experience-case-study-grid li::marker{color:var(--foreground);font-family:var(--font-mono),ui-monospace,monospace;font-size:.74em;font-weight:700}.experience-case-study-stack{grid-column:1/-1}.case-study-grid h2,.detail-columns h4{font-family:var(--font-mono),ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase;margin:0 0 10px;font-size:.78rem}.project-window{gap:16px;width:min(100%,1120px);margin-inline:auto;display:grid}.project-window-stage{isolation:isolate;height:calc(clamp(520px,38vw,560px) + 4px);position:relative;overflow:hidden}.project-window .project-list{grid-auto-rows:1fr}.project-carousel-page{transform-origin:50%;position:absolute;inset:4px 0 0}.project-window .project-list>div,.project-window .project-panel{height:100%;min-height:0}.project-window .project-panel{grid-template-rows:190px minmax(0,1fr);gap:12px;padding:clamp(14px,1.5vw,20px)}.project-window .project-panel-copy{flex-direction:column;gap:8px;height:100%;display:flex}.project-window .project-metadata,.project-window .project-panel-top{justify-content:start;gap:10px;display:grid}.project-window .project-panel h3{margin:auto 0 0;font-size:clamp(1.5rem,1.7vw,1.9rem);line-height:1.02}.project-window .project-actions{margin-top:2px}.project-window .project-cover{justify-self:center;width:auto;height:190px;min-height:0;max-height:none}.project-cover-variant{grid-row:1;min-height:0;display:grid}.project-cover-mobile{display:none}.project-window .badge{padding:5px 7px;font-size:.64rem}.project-window-controls{border-top:1px solid var(--border-medium);grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;padding-top:14px;display:grid}.project-window-controls button{border:1px solid var(--foreground);background:var(--background);width:fit-content;min-height:44px;color:var(--foreground);cursor:pointer;font-family:var(--font-mono),ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:12px;padding:0 13px 0 0;font-size:.7rem;font-weight:700;display:inline-flex}.project-window-controls button:last-child{justify-content:end;justify-self:end;padding:0 0 0 13px}.project-window-controls button:focus-visible,.project-window-controls button:hover{background:var(--foreground);color:var(--background);text-decoration:none}.project-window-controls button span{border-right:1px solid var(--foreground);place-items:center;width:42px;min-height:42px;font-size:1rem;display:grid}.project-window-controls button:last-child span{border-right:0;border-left:1px solid var(--foreground);order:2}.project-window-controls button:focus-visible span,.project-window-controls button:hover span{border-color:var(--background)}.project-window-controls button:disabled{cursor:wait;opacity:.45}.project-window-controls p{border-inline:1px solid var(--border-medium);color:var(--foreground-muted);font-family:var(--font-mono),ui-monospace,monospace;letter-spacing:.08em;margin:0;padding:0 10px;font-size:.65rem}.project-list{gap:20px;display:grid}.project-panel{gap:var(--gap);will-change:transform;cursor:pointer;grid-template-columns:minmax(0,1fr) minmax(280px,.42fr);padding:clamp(22px,4vw,46px);transition:border-color .16s,transform .16s;display:grid}.project-panel:focus-visible,.project-panel:focus-within,.project-panel:hover{border-color:var(--foreground);transform:translateY(-2px)}.project-panel-copy{gap:22px;display:grid}.project-metadata,.project-panel-top{font-family:var(--font-mono),ui-monospace,monospace;flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:.75rem;display:flex}.project-origin-badge{border:1px solid var(--border-medium);width:fit-content;color:var(--foreground-muted);font-family:var(--font-mono),ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:7px;padding:6px 8px;font-size:.6rem;font-weight:700;line-height:1;display:inline-flex}.project-origin-badge>span{background:var(--foreground);width:6px;height:6px;box-shadow:0 0 0 3px var(--foreground);border-radius:999px}@supports (color:color-mix(in lab,red,red)){.project-origin-badge>span{box-shadow:0 0 0 3px color-mix(in srgb,var(--foreground) 14%,transparent)}}.project-subtitle{margin:-12px 0 0;font-size:clamp(1.2rem,2vw,1.65rem);font-weight:650}.project-cover{min-height:240px;transition:transform var(--motion-normal) var(--ease-standard);align-self:stretch}.project-cover rect{fill:var(--background);stroke:var(--foreground)}.cover-grid{opacity:.35}.cover-nodes circle{fill:var(--foreground)}.cover-route-line{stroke-dasharray:1;stroke-dashoffset:1px;animation:cover-route-draw .68s var(--ease-mechanical) forwards}.project-panel:focus-within .cover-route-line,.project-panel:hover .cover-route-line{stroke:var(--foreground);stroke-width:1.7px}.project-panel:focus-within .project-cover,.project-panel:hover .project-cover{transform:translateY(-2px)}.cover-title{letter-spacing:0;font-size:42px}.project-cover--wide text{font-size:13px}.project-cover--wide .cover-title{font-size:56px}.philosophy-grid>p span{display:inline-block}.philosophy-grid ol{gap:16px;margin:0;padding:0;list-style:none;display:grid}.philosophy-grid li{border-top:1px solid var(--border-medium);grid-template-columns:48px 1fr;gap:18px;padding:18px 0;font-size:clamp(1.1rem,2vw,1.45rem);display:grid}.contact-actions{align-content:start}.contact-lines{pointer-events:none;gap:18px;display:grid;position:absolute;bottom:64px;left:0;right:0}.contact-lines span{background:linear-gradient(90deg,transparent,var(--border-strong),transparent);transform-origin:50%;height:1px;animation:contact-converge .9s var(--ease-mechanical) forwards;animation-timeline:view();animation-range:entry 18% cover 42%;transform:scaleX(0)}.contact-lines span:nth-child(2){animation-delay:80ms}.contact-lines span:nth-child(3){animation-delay:.16s}.site-footer{width:var(--container);border-top:1px solid var(--border-medium);color:var(--foreground);font-family:var(--font-mono),ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase;grid-template-columns:1fr auto;gap:20px;margin-inline:auto;padding-block:28px 42px;font-size:.72rem;animation:footer-line linear both;animation-timeline:view();animation-range:entry 20% cover 34%;display:grid}.site-footer nav{flex-wrap:wrap;gap:16px;display:flex}.empty-state,.loading-screen,.missing-screen{padding:clamp(28px,5vw,64px)}.back-link{border-bottom:1px solid var(--foreground);font-family:var(--font-mono),ui-monospace,monospace;margin-bottom:32px;font-size:.75rem;display:inline-block}.case-study-hero{border-bottom:1px solid var(--border);align-items:center;padding-bottom:64px}.case-study-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding-block:64px}.case-study-grid section{border-top:1px solid var(--border-medium);animation:section-rise var(--motion-slow) var(--ease-entrance) both;padding-top:18px;animation-timeline:view();animation-range:entry 8% cover 24%}.case-study-grid .technology-matrix{border:1px solid var(--foreground);grid-column:1/-1;padding-top:0;animation-range:entry 4% cover 18%;overflow:hidden}.technology-matrix>header{background:var(--foreground);color:var(--background);justify-content:space-between;align-items:end;gap:20px;padding:18px 20px;display:flex}.technology-matrix>header h2,.technology-matrix>header p{margin:0}.technology-matrix>header p{color:var(--background);margin-bottom:5px}@supports (color:color-mix(in lab,red,red)){.technology-matrix>header p{color:color-mix(in srgb,var(--background) 68%,transparent)}}.technology-matrix>header span{font-family:var(--font-mono),ui-monospace,monospace;letter-spacing:.08em;font-size:.72rem}.technology-matrix-grid{background:var(--border-medium);grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;display:grid}.technology-matrix-grid>div{background:var(--background);min-height:82px;transition:background var(--motion-fast) var(--ease-standard),color var(--motion-fast) var(--ease-standard);align-content:space-between;gap:14px;padding:13px 15px;display:grid}.technology-matrix-grid>div:hover{background:var(--foreground);color:var(--background)}.technology-matrix-grid small{color:var(--foreground-muted);font-family:var(--font-mono),ui-monospace,monospace;font-size:.62rem}.technology-matrix-grid strong{overflow-wrap:anywhere;font-size:clamp(.82rem,1.2vw,1rem)}.case-study-nav{border-top:0;justify-content:space-between;align-items:center;gap:10px;padding-block:18px 64px;display:flex}.case-study-nav a{border:1px solid var(--border-medium);min-width:0;min-height:38px;color:var(--foreground-muted);font-family:var(--font-mono),ui-monospace,monospace;letter-spacing:.08em;transition:border-color var(--motion-fast) var(--ease-standard),background var(--motion-fast) var(--ease-standard),color var(--motion-fast) var(--ease-standard);flex:none;justify-content:center;align-items:center;padding:8px 12px;font-size:.58rem;font-weight:700;display:inline-flex}.case-study-nav>span{flex:auto}.case-study-nav-next{margin-left:auto}.case-study-nav a:focus-visible,.case-study-nav a:hover{border-color:var(--foreground);background:var(--foreground);color:var(--background)}.case-study-nav a:last-child{text-align:right}.case-study-nav a:last-child:focus-visible,.case-study-nav a:last-child:hover{transform:none}.case-study-hero{grid-template-columns:minmax(0,1.12fr) minmax(300px,.64fr);align-items:end;gap:clamp(28px,5vw,76px);padding-bottom:clamp(34px,5vw,64px)}.case-study{padding-top:clamp(102px,9vw,132px)}.case-study-masthead{border:0;overflow:visible}.case-study-strip{border-bottom:1px solid var(--border-medium);min-height:48px;font-family:var(--font-mono),ui-monospace,monospace;letter-spacing:.07em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:20px;padding:0;font-size:.65rem;font-weight:700;display:flex}.case-study-strip .back-link{border:0;margin:0}.case-study-strip>span{max-width:50%;color:var(--foreground-muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.case-study-masthead .case-study-hero{isolation:isolate;border:0;grid-template-columns:minmax(360px,.9fr) minmax(0,1.1fr);align-items:stretch;gap:clamp(34px,6vw,96px);padding:clamp(34px,5vw,68px) 0;position:relative}.case-study-masthead .case-study-hero:before{z-index:-1;background-color:var(--background);background-image:repeating-linear-gradient(135deg,transparent 0,transparent 12px,var(--foreground) 12px,var(--foreground) 13px);inset-block:0;width:100vw;position:absolute;left:50%;transform:translate(-50%)}@supports (color:color-mix(in lab,red,red)){.case-study-masthead .case-study-hero:before{background-image:repeating-linear-gradient(135deg,transparent 0,transparent 12px,color-mix(in srgb,var(--foreground) 16%,transparent) 12px,color-mix(in srgb,var(--foreground) 16%,transparent) 13px)}}.case-study-masthead .case-study-hero:before{content:"";pointer-events:none;background-size:18px 18px;animation:experience-hatch-drift 4.6s linear infinite}.case-study-masthead .case-study-hero>div:last-child{border-left:0;align-content:center;padding:0;display:grid}.case-study-summary{padding:clamp(24px,3vw,42px)!important}.case-study-visual{background:0 0;grid-template-rows:minmax(0,1fr) auto;min-height:440px;padding:0;display:grid}.case-study-visual .project-cover{transform-origin:50%;place-self:center;width:min(100%,620px);height:auto;transform:scale(1.18)}.case-study-visual-ledger{border-top:1px solid var(--foreground);font-family:var(--font-mono),ui-monospace,monospace;letter-spacing:.07em;text-transform:uppercase;justify-content:space-between;gap:12px;padding-top:12px;font-size:.62rem;font-weight:700;display:flex}.case-study-hero>div:last-child{align-content:end;display:grid}.case-study-hero>div:last-child>p:not(.technical-label):not(.metadata){max-width:720px;color:var(--foreground-muted);margin:16px 0 0;font-size:clamp(1rem,1.45vw,1.25rem);line-height:1.38}.case-study-hero .metadata{margin:20px 0 0}.case-study-hero .project-actions{margin-top:20px}.case-study-story{border:1px solid var(--foreground);background:var(--background);gap:0;margin-top:clamp(34px,5vw,68px);margin-bottom:0;display:grid;position:relative}.case-study-story>.project-origin-badge{z-index:2;background:var(--background);position:absolute;top:0;left:clamp(12px,2.4vw,28px);transform:translateY(-50%)}.case-study-evidence,.case-study-frame,.case-study-response{background:0 0;gap:0;display:grid}.case-study-frame{grid-template-columns:repeat(2,minmax(0,1fr))}.case-study-frame>section{min-height:clamp(320px,25vw,420px);padding:clamp(26px,3.2vw,48px)}.case-study-frame>section>p{max-width:60ch;font-size:clamp(1rem,1.35vw,1.18rem);line-height:1.62}.case-study-response{grid-template-columns:minmax(0,1.1fr) minmax(420px,.9fr)}.case-study-evidence{grid-template-columns:repeat(3,minmax(0,1fr))}.case-study-story section{border-right:1px solid var(--foreground);border-bottom:1px solid var(--foreground);background:var(--background);min-width:0;padding:clamp(20px,2.6vw,38px)}.case-study-evidence>section:last-child,.case-study-frame>section:last-child,.case-study-response>section:last-child,.case-study-story>.case-study-impact,.case-study-story>.technology-matrix{border-right:0}.case-study-story h2{font-family:var(--font-mono),ui-monospace,monospace;letter-spacing:.09em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:700}.case-study-story section>p{max-width:64ch;color:var(--foreground-muted);margin:14px 0 0;font-size:clamp(.95rem,1.25vw,1.08rem);line-height:1.58}.case-study-story section>ul{margin:15px 0 0;padding:0;list-style:none}.case-study-story section>ul li{color:var(--foreground-muted);grid-template-columns:20px minmax(0,1fr);gap:8px;font-size:clamp(.98rem,1.25vw,1.12rem);line-height:1.5;display:grid}.case-study-story section>ul li+li{margin-top:9px}.case-study-story section>ul li:before{color:var(--foreground);content:"→";font-family:var(--font-mono),ui-monospace,monospace;font-size:.74rem;font-weight:700}.case-study-solution{background:var(--foreground)!important}@supports (color:color-mix(in lab,red,red)){.case-study-solution{background:color-mix(in srgb,var(--foreground) 4%,var(--background))!important}}.case-study-solution>p{max-width:70ch!important;color:var(--foreground)!important;font-size:clamp(1.08rem,1.6vw,1.42rem)!important;line-height:1.42!important}.case-study-impact{color:var(--background);grid-template-columns:minmax(170px,.38fr) minmax(0,1.62fr);align-items:start;gap:clamp(18px,4vw,64px);display:grid;background:var(--foreground)!important}.case-study-impact>p{max-width:75ch!important;color:var(--background)!important;margin:0!important}@supports (color:color-mix(in lab,red,red)){.case-study-impact>p{color:color-mix(in srgb,var(--background) 78%,transparent)!important}}.case-study-impact>p{font-size:clamp(1rem,1.45vw,1.28rem)!important}.case-study>.technology-matrix{border:1px solid var(--foreground);margin-top:0;overflow:hidden}.case-study>.technology-matrix>header{background:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.case-study>.technology-matrix>header{background:color-mix(in srgb,var(--foreground) 7%,var(--background))}}.case-study>.technology-matrix>header{color:var(--foreground);padding:16px 20px}.case-study>.technology-matrix>header p{color:var(--foreground-muted)}.case-study>.technology-matrix .technology-matrix-grid{background-color:var(--background);background-image:repeating-linear-gradient(135deg,transparent 0,transparent 12px,var(--foreground) 12px,var(--foreground) 13px);gap:1px 0}@supports (color:color-mix(in lab,red,red)){.case-study>.technology-matrix .technology-matrix-grid{background-image:repeating-linear-gradient(135deg,transparent 0,transparent 12px,color-mix(in srgb,var(--foreground) 17%,transparent) 12px,color-mix(in srgb,var(--foreground) 17%,transparent) 13px)}}.case-study>.technology-matrix .technology-matrix-grid{background-size:18px 18px;animation:experience-hatch-drift 4.6s linear infinite}.case-study>.technology-matrix .technology-matrix-grid>div{border-right:1px solid var(--background);background:var(--foreground);min-height:66px;color:var(--background)}.case-study>.technology-matrix .technology-matrix-grid>div:last-child{border-right:0}.case-study>.technology-matrix .technology-matrix-grid small{color:var(--background)}@supports (color:color-mix(in lab,red,red)){.case-study>.technology-matrix .technology-matrix-grid small{color:color-mix(in srgb,var(--background) 62%,transparent)}}.case-study>.technology-matrix .technology-matrix-grid>div:hover{background:var(--background);color:var(--foreground)}.identity-section,.projects-section{isolation:isolate;position:relative}.identity-section:before,.projects-section:before{z-index:-1;background-color:var(--background);background-image:repeating-linear-gradient(135deg,transparent 0,transparent 12px,var(--foreground) 12px,var(--foreground) 13px);width:100vw;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}@supports (color:color-mix(in lab,red,red)){.identity-section:before,.projects-section:before{background-image:repeating-linear-gradient(135deg,transparent 0,transparent 12px,color-mix(in srgb,var(--foreground) 12%,transparent) 12px,color-mix(in srgb,var(--foreground) 12%,transparent) 13px)}}.identity-section:before,.projects-section:before{content:"";pointer-events:none;background-size:18px 18px;animation:experience-hatch-drift 4.6s linear infinite}.contact-section{isolation:isolate;position:relative}.contact-section:before{z-index:-1;background-color:var(--background);background-image:repeating-linear-gradient(135deg,transparent 0,transparent 12px,var(--foreground) 12px,var(--foreground) 13px);width:100vw;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}@supports (color:color-mix(in lab,red,red)){.contact-section:before{background-image:repeating-linear-gradient(135deg,transparent 0,transparent 12px,color-mix(in srgb,var(--foreground) 12%,transparent) 12px,color-mix(in srgb,var(--foreground) 12%,transparent) 13px)}}.contact-section:before{content:"";pointer-events:none;background-size:18px 18px;animation:experience-hatch-drift 4.6s linear infinite}@keyframes menu-enter{0%{opacity:0;transform:translateY(-8px)}}@keyframes hero-terminal-mark{0%{opacity:0;transform:translateY(.18em)scale(.35)}}@keyframes menu-item-enter{0%{opacity:0;transform:translateY(16px)}}@keyframes cover-route-draw{to{stroke-dashoffset:0}}@keyframes system-flow{to{stroke-dashoffset:-1px}}@keyframes contact-converge{to{transform:scaleX(1)}}@keyframes footer-line{0%{border-color:#0000}}@keyframes section-rise{0%{opacity:0;transform:translateY(12px)}}@keyframes experience-hatch-drift{to{background-position:18px 18px}}@media (min-width:1025px){:root{--section-space:clamp(48px,5vw,76px);--gap:clamp(14px,1.5vw,22px)}.hero-section{grid-template-columns:minmax(0,.95fr) minmax(460px,.8fr);min-height:min(780px,100svh);padding-top:94px}.hero-section h1{font-size:clamp(3rem,5.8vw,5.4rem)}.engineering-system{width:min(100%,620px)}.section-heading{grid-template-columns:minmax(120px,.18fr) minmax(0,1fr) auto;margin-bottom:clamp(30px,3.4vw,48px)}.section-heading h2{max-width:900px;font-size:clamp(1.9rem,3.35vw,3.8rem)}.section-description{margin-bottom:0;font-size:clamp(.94rem,1.1vw,1.08rem)}.identity-grid{grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr);align-items:start}.contact-grid>p,.identity-statement,.philosophy-grid>p{font-size:clamp(1.8rem,2.75vw,3.1rem);line-height:1.04}.stats-grid div{min-height:78px;padding:12px 14px}.stats-grid dd{margin-top:8px;font-size:clamp(1.1rem,1.8vw,1.55rem)}.capability-map{grid-template-columns:minmax(140px,.22fr) minmax(390px,.78fr) minmax(420px,1fr);gap:14px}.capability-core{min-height:220px;padding:18px}.capability-nodes{gap:8px}.capability-node{min-height:46px;padding-inline:8px;font-size:.78rem}.capability-detail{scrollbar-gutter:stable;gap:14px;block-size:414px;padding:20px;overflow-y:auto}.capability-detail-header{padding-bottom:13px}.capability-skill-grid>span{min-height:42px;padding:7px 9px}.capability-projects{padding-top:13px}.experience-timeline{grid-template-columns:minmax(210px,.26fr) minmax(0,1fr);align-items:start;gap:16px}.timeline-markers{border-top:0;border-left:1px solid var(--foreground);grid-template-columns:1fr;position:sticky;top:88px}.timeline-marker{border-right:0;border-bottom:1px solid var(--border-medium);min-height:78px;padding:13px 15px}.experience-detail{padding:clamp(22px,2.4vw,34px)}.experience-detail h3{font-size:clamp(1.8rem,2.7vw,3.1rem)}.detail-columns{gap:18px;margin-block:20px}.detail-columns ol{margin-bottom:0;padding-left:18px;font-size:.9rem;line-height:1.45}.project-list{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:16px}.project-list .project-panel,.project-list>div{height:100%}.project-panel{grid-template-columns:1fr;align-content:start;gap:16px;padding:clamp(20px,2.2vw,30px)}.project-panel-copy{gap:14px}.project-panel h3{font-size:clamp(1.85rem,2.7vw,3rem)}.project-panel .project-subtitle{margin-top:-7px;font-size:clamp(1rem,1.25vw,1.25rem)}.project-panel-copy>p:not(.project-subtitle){margin-block:0;font-size:.92rem;line-height:1.5}.project-cover{grid-row:1;min-height:170px;max-height:210px}.project-panel .inline-list{gap:6px}.project-panel .inline-list span{padding:5px 7px;font-size:.64rem}.philosophy-grid{grid-template-columns:minmax(0,.9fr) minmax(420px,.8fr)}.philosophy-grid ol{gap:8px}.philosophy-grid li{grid-template-columns:38px 1fr;gap:12px;padding:13px 0;font-size:clamp(1rem,1.35vw,1.22rem)}.contact-grid{grid-template-columns:minmax(0,1fr) minmax(360px,.7fr)}}@media (max-width:1024px){.desktop-nav,.site-header>.nav-contact-action{display:none}.mobile-nav{display:block}.site-header{grid-template-columns:1fr auto auto}.capability-map,.case-study-hero,.contact-grid,.hero-section,.identity-grid,.philosophy-grid,.project-panel{grid-template-columns:1fr}.hero-section{min-height:auto;padding-top:112px}.engineering-system{justify-self:start;width:min(100%,560px)}.section-heading{grid-template-columns:1fr}.capability-map{gap:18px}.capability-core{min-height:120px}.capability-detail{min-height:0}}@media (max-width:760px){:root{--container:min(100vw - 24px,1500px);--section-space:40px;--gap:14px;--anchor-offset:76px}.site-header{top:max(10px,env(safe-area-inset-top));padding:8px 8px 8px 12px;left:12px;right:12px}.site-brand{font-size:.66rem}.mobile-menu-button{gap:8px;min-width:48px;min-height:42px;padding-inline:12px}.theme-toggle{width:42px;height:42px}.mobile-menu-button>span:first-child{border-top:1px solid;border-bottom:1px solid;width:14px;height:8px;position:relative}.mobile-nav.is-open .mobile-menu-button{background:var(--background);color:var(--foreground)}.mobile-nav.is-open .mobile-menu-button>span:first-child{border:0;height:14px}.mobile-nav.is-open .mobile-menu-button>span:first-child:after,.mobile-nav.is-open .mobile-menu-button>span:first-child:before{content:"";border-top:1px solid;width:14px;position:absolute;top:6px;left:0}.mobile-nav.is-open .mobile-menu-button>span:first-child:before{transform:rotate(45deg)}.mobile-nav.is-open .mobile-menu-button>span:first-child:after{transform:rotate(-45deg)}.mobile-nav.is-open .mobile-menu-button>span:last-child{font-size:0}.mobile-nav.is-open .mobile-menu-button>span:last-child:after{font-family:var(--font-mono),ui-monospace,monospace;letter-spacing:.08em;content:"CLOSE";font-size:.62rem}.mobile-menu{padding:max(66px,calc(env(safe-area-inset-top) + 58px)) 12px 12px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#09090914;justify-content:center;align-items:flex-start}.mobile-menu-panel{background-color:var(--background);background-image:repeating-linear-gradient(135deg,transparent 0,transparent 12px,var(--foreground) 12px,var(--foreground) 13px);width:calc(100vw - 24px);max-width:none}@supports (color:color-mix(in lab,red,red)){.mobile-menu-panel{background-image:repeating-linear-gradient(135deg,transparent 0,transparent 12px,color-mix(in srgb,var(--foreground) 10%,transparent) 12px,color-mix(in srgb,var(--foreground) 10%,transparent) 13px)}}.mobile-menu-panel{background-size:18px 18px;animation:experience-hatch-drift 4.6s linear infinite;box-shadow:0 12px 34px #0909091c}.mobile-menu-panel>header{min-height:42px;padding-left:12px;font-size:.6rem}.mobile-menu-panel .mobile-menu-close{min-width:42px;min-height:42px;padding-inline:10px;font-size:.62rem}.mobile-menu-panel nav a{background:var(--background);grid-template-columns:24px 1fr auto;gap:8px;min-height:50px}@supports (color:color-mix(in lab,red,red)){.mobile-menu-panel nav a{background:color-mix(in srgb,var(--background) 86%,transparent)}}.mobile-menu-panel nav a{padding:10px 12px;font-size:clamp(1rem,4.7vw,1.2rem)}.hero-section{min-height:min(100svh,760px);padding-top:calc(86px + env(safe-area-inset-top));align-content:center;gap:30px;padding-bottom:30px}.hero-section h1{font-size:clamp(2.65rem,14.4vw,4.5rem);line-height:.88}.hero-copy{gap:14px}.button-large,.hero-actions .button{width:100%}.hero-meta{gap:8px 14px;font-size:.66rem}.engineering-system{display:none}.portfolio-section{scroll-margin-top:76px}.portfolio-section:not(.projects-section){padding-block:36px}.section-heading{gap:10px;margin-bottom:28px}.section-heading h2{font-size:clamp(2rem,10vw,3rem);line-height:.95}.contact-grid>p,.identity-statement,.philosophy-grid>p{font-size:clamp(1.5rem,8vw,2.35rem)}.identity-statement{font-size:clamp(1.12rem,5.2vw,1.4rem);line-height:1.22}.stats-grid div{min-height:76px;padding:12px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stats-grid:after{content:"";min-height:76px;display:block}.case-study-grid,.case-study-nav,.detail-columns,.site-footer{grid-template-columns:1fr}.capability-map{display:block}.capability-core{letter-spacing:.08em;writing-mode:horizontal-tb;min-height:62px;margin-bottom:12px;padding:12px;font-size:.78rem;transform:none}.capability-core:after{inset:7px}.capability-nodes,.project-list,.timeline-markers{overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-width:none;gap:10px;width:calc(100% + 12px);padding:0 12px 12px 0;scroll-padding-inline:0 12px;display:flex;overflow-x:auto}.capability-nodes::-webkit-scrollbar,.timeline-markers::-webkit-scrollbar{display:none}.project-list::-webkit-scrollbar{display:none}.capability-node{scroll-snap-align:start;flex:none;min-width:190px;min-height:48px;padding-inline:14px}.capability-detail{gap:15px;margin-top:2px;padding:16px}.capability-detail-header{padding-bottom:13px}.capability-skill-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.capability-skill-grid>span{grid-template-columns:18px minmax(0,1fr);gap:5px;min-height:43px;padding:7px;font-size:.69rem}.experience-timeline{gap:12px}.timeline-markers{border:0}.technology-matrix-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.timeline-marker{border:1px solid var(--border-medium);scroll-snap-align:start;flex:none;min-width:min(78vw,290px);min-height:76px;padding:13px}.experience-detail{padding:18px 16px}.experience-detail h3{font-size:clamp(1.55rem,8.6vw,2.4rem)}.experience-detail>p:not(.technical-label):not(.metadata){font-size:.94rem;line-height:1.55}.experience-detail .detail-columns{display:none}.experience-accordions{border-top:1px solid var(--border-medium);margin-block:20px;display:grid}.experience-accordions details{border-bottom:1px solid var(--border-medium)}.experience-accordions summary{min-height:48px;font-family:var(--font-mono),ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;justify-content:space-between;align-items:center;font-size:.72rem;font-weight:700;list-style:none;display:flex}.experience-accordions summary::-webkit-details-marker{display:none}.experience-accordions summary span{transition:transform var(--motion-normal) var(--ease-standard);font-size:1rem}.experience-accordions details[open] summary span{transform:rotate(45deg)}.experience-accordions details>p,.experience-accordions ol{margin:0;font-size:.88rem;line-height:1.5}.experience-accordions ol{padding:0 0 16px 24px}.experience-accordions details>p{padding:0 0 16px}.project-list>div{scroll-snap-align:start;flex:none;width:min(82vw,320px)}.project-panel{align-content:start;gap:14px;height:100%;padding:14px}.project-cover{grid-row:1;min-height:124px;max-height:154px}.project-panel-copy{gap:10px}.project-panel h3{font-size:clamp(1.55rem,8.8vw,2.25rem)}.project-panel-copy>p:not(.project-subtitle){-webkit-line-clamp:5;-webkit-box-orient:vertical;font-size:.9rem;line-height:1.48;display:-webkit-box;overflow:hidden}.project-panel .project-subtitle{margin-top:-7px;font-size:1.05rem}.project-panel .project-technology:nth-child(n+6){display:none}.project-panel .project-technology-more{display:inline-block}.project-panel .inline-list span{padding:5px 7px;font-size:.62rem}.project-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.project-actions .button{min-width:0;padding-inline:9px}.contact-grid,.philosophy-grid{gap:18px}.philosophy-grid li{grid-template-columns:34px 1fr;gap:10px;padding:14px 0;font-size:1rem}.contact-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.contact-actions .button{min-width:0;min-height:48px;padding-inline:10px}.contact-actions .button:last-child{grid-column:1/-1}.site-footer{padding-bottom:max(22px,env(safe-area-inset-bottom));gap:10px}.case-study{padding-top:106px}.case-study-grid{gap:12px;margin-block:18px}.case-study-grid section{padding:16px}.case-study-nav{flex-direction:row;align-items:center;gap:10px}.case-study-nav a{flex-basis:auto;min-height:36px;padding:8px 10px}.case-study-nav-next{margin-left:0}.project-metadata,.project-panel-top,.site-footer{align-items:start}.capability-node:focus-visible,.capability-node:hover,.timeline-marker:hover,.timeline-marker[aria-selected=true]{transform:none}}@media (min-width:761px){.project-list{scroll-snap-type:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;width:100%;padding:0;display:grid;overflow:visible}.project-list>div{width:auto;min-width:0}}@media (max-width:760px){.project-window{width:min(100%,1120px)}.project-cover-variant{width:100%}.project-cover-variant .project-cover-desktop{display:block}.project-cover-variant .project-cover-mobile{display:none}.project-window .project-cover{width:auto;height:182px}.project-window .project-panel{grid-template-rows:auto minmax(0,1fr);gap:7px;padding:9px}.project-window-stage{width:calc(100% - 32px);height:min(470px,100svh - 120px);margin-inline:auto}.project-window .project-list{grid-auto-rows:100%}.project-window .project-panel-copy{gap:6px}.project-window .project-panel h3{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:auto;font-size:clamp(1.3rem,6vw,1.65rem);line-height:1.02;display:-webkit-box;overflow:hidden}.project-window .project-metadata{gap:6px}.project-window .project-metadata>span{white-space:nowrap}.project-window .badge-row{flex-wrap:wrap;display:flex;overflow:visible}.project-window .badge{text-overflow:clip;white-space:normal;max-width:none;overflow:visible}.project-window .project-actions .button{min-height:40px;padding-inline:14px;font-size:.64rem}.project-window .project-actions .button-primary{border-color:var(--foreground);background-color:var(--background);background-image:repeating-linear-gradient(135deg,transparent 0,transparent 12px,var(--foreground) 12px,var(--foreground) 13px);min-height:34px}@supports (color:color-mix(in lab,red,red)){.project-window .project-actions .button-primary{background-image:repeating-linear-gradient(135deg,transparent 0,transparent 12px,color-mix(in srgb,var(--foreground) 12%,transparent) 12px,color-mix(in srgb,var(--foreground) 12%,transparent) 13px)}}.project-window .project-actions .button-primary{color:var(--foreground);background-size:18px 18px;padding-inline:11px;animation:experience-hatch-drift 4.6s linear infinite}.project-window .project-actions .button-primary:focus-visible,.project-window .project-actions .button-primary:hover{background-color:var(--background);color:var(--foreground)}.project-list{scroll-snap-type:none;grid-template-columns:minmax(0,1fr);width:100%;padding:0;display:grid;overflow:visible}.project-list>div{width:100%;min-width:0}.project-window-controls{gap:8px}.project-window-controls button{min-height:48px;font-size:.64rem}.project-window-controls p{font-size:.6rem}}.contact-section,.philosophy-section{padding-block:clamp(40px,4.5vw,64px)}.contact-section .section-heading,.philosophy-section .section-heading{margin-bottom:clamp(24px,3vw,36px)}.contact-section .section-heading h2,.philosophy-section .section-heading h2{font-size:clamp(1.85rem,3vw,3.15rem)}.contact-section .contact-grid,.philosophy-section .philosophy-grid{gap:clamp(18px,2.5vw,32px)}.contact-section .contact-grid>p,.philosophy-section .philosophy-grid>p{font-size:clamp(1.35rem,2.35vw,2.5rem);line-height:1.05}.philosophy-section .philosophy-grid li{grid-template-columns:32px 1fr;gap:10px;padding-block:10px;font-size:clamp(.92rem,1.15vw,1.08rem)}.contact-section .contact-lines{gap:10px;bottom:34px}@media (max-width:1024px){.experience-record-content-inner{grid-template-columns:repeat(2,minmax(0,1fr))}.experience-stack{grid-column:1/-1}.experience-case-study-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.experience-case-study-grid>section,.experience-case-study-grid>section:first-child,.experience-case-study-grid>section:nth-child(2){grid-column:auto}.experience-case-study-stack{grid-column:1/-1!important}.capability-atlas-index{grid-template-columns:repeat(2,minmax(0,1fr))}.capability-console{grid-template-columns:minmax(190px,.62fr) minmax(0,1.38fr)}.capability-index-drawer-content{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:760px){.hero-section{min-height:min(82svh,620px);padding-top:calc(78px + env(safe-area-inset-top));align-content:center;gap:16px;padding-bottom:24px}.hero-copy{gap:10px}.hero-section h1{font-size:clamp(2.35rem,12vw,3.5rem);line-height:.9}.hero-greeting{font-size:.82rem}.hero-actions{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:8px;display:grid}.button-large,.hero-actions .button{width:auto;min-height:44px;padding-inline:8px;font-size:.58rem}.philosophy-section{padding-block:26px}.philosophy-section .section-heading{gap:6px;margin-bottom:16px}.philosophy-section .section-heading h2{font-size:clamp(1.55rem,7.5vw,1.9rem);line-height:.98}.philosophy-section .philosophy-grid{gap:13px}.philosophy-section .philosophy-grid>p{font-size:clamp(1.08rem,5.4vw,1.32rem);line-height:1.04}.philosophy-section .philosophy-grid ol{gap:0}.philosophy-section .philosophy-grid li{grid-template-columns:28px minmax(0,1fr);gap:8px;padding-block:10px;font-size:.86rem}.contact-section{padding-block:26px 20px}.contact-section .section-heading{gap:6px;margin-bottom:18px}.contact-section .section-heading h2{font-size:clamp(1.55rem,7.6vw,1.95rem);line-height:.98}.contact-section .contact-grid{gap:14px}.contact-section .contact-grid>p{font-size:clamp(1.1rem,5.5vw,1.38rem);line-height:1.04}.contact-section .contact-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;width:100%;min-width:0;padding-right:2px;display:grid}.contact-section .contact-actions .button{width:100%;min-width:0;max-width:100%;min-height:42px;padding-inline:9px;font-size:.64rem}.contact-section .contact-actions .button:last-child{grid-column:auto}.contact-section .contact-lines{gap:7px;bottom:20px}.site-footer{padding-block:14px max(18px,env(safe-area-inset-bottom));gap:6px;font-size:.62rem}.experience-record-trigger{grid-template-columns:30px minmax(0,1fr) auto;gap:8px;min-height:0;padding-block:11px}.experience-record-index,.experience-record-period{font-size:.58rem}.experience-record-role{gap:3px}.experience-record-role strong{font-size:.94rem;line-height:1.08}.experience-record-role small{font-size:.58rem}.experience-record-period{color:var(--foreground-muted);grid-column:2}.experience-record-state{grid-area:1/3/span 2;font-size:.54rem}.experience-record-content-inner{grid-template-columns:1fr}.experience-challenge,.experience-list-block,.experience-overview,.experience-stack{border-right:0;border-bottom:1px solid var(--border-medium);padding:18px 14px}.experience-stack{border-bottom:0}.experience-case-study{padding-top:max(96px,calc(env(safe-area-inset-top) + 72px))}.experience-case-study-grid{grid-template-columns:1fr}.experience-case-study-grid>section,.experience-case-study-grid>section:first-child,.experience-case-study-grid>section:nth-child(2){border-right:0;border-bottom:1px solid var(--border-medium);grid-column:auto}.experience-case-study-grid>section:last-child{border-bottom:0}.capability-atlas-header{align-items:start}.capability-atlas-index{grid-template-columns:1fr}.capability-atlas-node{min-height:72px;padding:12px}.capability-atlas-reading{grid-template-columns:1fr}.capability-atlas-reading>header{border-right:0;border-bottom:1px solid var(--border-medium);gap:14px;padding:18px 14px}.capability-atlas-skills{grid-template-columns:1fr}.capability-atlas-skills li{border-right:0;min-height:50px;padding:10px 14px}.capability-atlas-systems{padding:14px}.capability-console{grid-template-columns:1fr}.capability-console-rail{border-right:0;border-bottom:1px solid var(--foreground);grid-template-columns:repeat(2,minmax(0,1fr))}.capability-console-tab{min-height:56px;padding:9px 10px}.capability-console-tab:nth-child(odd){border-right:1px solid var(--border-medium)}.capability-console-panel>header{grid-template-columns:62px minmax(0,1fr) auto;gap:8px 12px;padding:14px}.capability-console-panel>header>div:nth-child(2){min-width:0}.capability-console-panel>header .technical-label{white-space:nowrap}.capability-console-panel h3{font-size:1.25rem}.capability-console-signal{height:38px}.capability-console-panel>header>span{padding:5px;font-size:.55rem}.capability-console-skills{gap:6px;padding:14px}.capability-console-skills>span{font-size:.7rem}.capability-console-panel footer{flex-direction:column;align-items:start;gap:8px;padding:12px 14px}.capability-index-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.capability-index-card{min-height:68px;padding:9px 10px 24px}.capability-index-card:nth-child(3n){border-right:1px solid var(--foreground)}.capability-index-card:nth-last-child(-n+3){border-bottom:1px solid var(--foreground)}.capability-index-card:nth-child(2n){border-right:0}.capability-index-card:nth-last-child(-n+2){border-bottom:0}.capability-index-card strong{font-size:.72rem;line-height:1.04}.capability-index-card>i{font-size:.76rem;bottom:8px;right:10px}.capability-index-drawer-content{grid-template-columns:1fr}.capability-index-drawer-content>header{border-right:0;border-bottom:1px solid var(--border-medium);grid-area:1/1/auto/-1;justify-content:space-between;align-items:end;gap:12px;min-height:48px;padding:11px 12px;display:flex}.capability-index-drawer-content h3{max-width:27ch;font-size:1rem;line-height:1}.capability-index-skills{grid-area:2/1/auto/-1;grid-template-columns:repeat(3,minmax(0,1fr));align-content:start;gap:0 8px;padding:8px 12px;display:grid;overflow:visible}.capability-index-skills>span{gap:4px;min-width:0;padding:5px 0;font-size:.59rem;line-height:1.18}.capability-index-drawer-content footer{overscroll-behavior-inline:contain;scrollbar-width:none;flex-direction:row;grid-area:3/1/auto/-1;align-items:center;gap:8px;padding:8px 12px;overflow-x:auto}.capability-index-drawer-content footer::-webkit-scrollbar{display:none}.capability-index-drawer-content footer .inline-list{flex-wrap:nowrap}.capability-index-drawer-content footer .inline-list span{white-space:nowrap}.capability-index-drawer-content footer{flex-direction:column;align-items:start;gap:7px;padding:12px 14px}.case-study-evidence,.case-study-frame,.case-study-hero,.case-study-masthead .case-study-hero,.case-study-response{grid-template-columns:1fr}.case-study-masthead .case-study-hero>div:last-child{border-top:0;border-left:0;padding:0}.case-study-visual{display:none}.case-study-strip{min-height:44px;padding-inline:0}.case-study-strip>span{max-width:45%}.case-study-visual-ledger{font-size:.55rem}.case-study-visual .project-cover{transform:scale(1.06)}.case-study>.technology-matrix>header{align-items:center;padding:12px 14px}.case-study>.technology-matrix .technology-matrix-grid{flex-wrap:wrap;align-items:stretch;gap:6px;padding:10px;display:flex}.case-study>.technology-matrix .technology-matrix-grid>div,.case-study>.technology-matrix .technology-matrix-grid>div:nth-child(2n),.case-study>.technology-matrix .technology-matrix-grid>div:nth-last-child(-n+2){border:1px solid var(--background);flex:auto;align-content:center;align-items:center;gap:6px;min-width:0;min-height:40px;padding:7px 9px;display:inline-flex}.case-study>.technology-matrix .technology-matrix-grid>div:last-child{border-right:1px solid var(--background)}.case-study>.technology-matrix .technology-matrix-grid small{flex:none;font-size:.52rem}.case-study>.technology-matrix .technology-matrix-grid strong{overflow-wrap:normal;font-size:.68rem;line-height:1.12}.case-study-hero{gap:24px}.case-study-story section{padding:19px 15px}.case-study-frame>section{min-height:0;padding:22px 15px}.case-study-impact{grid-template-columns:1fr;gap:12px}.scroll-progress{display:none}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.scroll-progress{display:none!important}.cover-route-line{stroke-dashoffset:0!important}.contact-lines span,.timeline-marker[aria-selected=true]{transform:none!important}}