.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.\!visible{visibility:visible!important}.visible{visibility:visible}.block{display:block}.table{display:table}.hidden{display:none}.resize{resize:both}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}:root{--surface-0: #080b10;--surface-1: #0d1219;--surface-2: #131a24;--surface-3: #1a2330;--paper: #f1eee7;--paper-dim: #d8d5ce;--text-primary: #f1eee7;--text-secondary: #a8b0bd;--text-muted: #7c8797;--line: rgba(157, 171, 191, .2);--line-strong: rgba(181, 193, 211, .36);--accent: #195bd5;--accent-bright: #4f8cff;--accent-soft: rgba(31, 111, 255, .14);--oxide: #d15d3f;--container: min(92vw, 1440px);--nav-height: 84px;--ease-out: cubic-bezier(.16, 1, .3, 1);--duration-micro: .18s;--duration-ui: .3s;--duration-reveal: .56s;--duration-signature: .76s;--font-sans: "Arial Nova", "Helvetica Neue", Arial, sans-serif;--font-mono: "SFMono-Regular", Consolas, "Liberation Mono", monospace;--text-meta: clamp(.75rem, .72rem + .1vw, .82rem);--text-label: clamp(.8rem, .77rem + .1vw, .88rem);--text-small: clamp(.9rem, .87rem + .1vw, .96rem);--text-body: clamp(1rem, .96rem + .14vw, 1.08rem);--text-lead: clamp(1.2rem, 1.08rem + .42vw, 1.48rem);--text-title: clamp(2.7rem, 2rem + 2.5vw, 5.4rem);--text-display: clamp(3.6rem, 2.55rem + 3.8vw, 7.5rem);--leading-body: 1.62;--leading-display: .88;--tracking-label: .08em;--tracking-display: -.058em}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--surface-0)}body{margin:0;min-width:320px;overflow-x:clip;color:var(--text-primary);background:var(--surface-0);font-family:var(--font-sans);font-size:var(--text-body);line-height:var(--leading-body);text-rendering:optimizeLegibility}body.menu-open{overflow:hidden}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}::-moz-selection{color:var(--paper);background:var(--accent)}::selection{color:var(--paper);background:var(--accent)}.container{width:var(--container);margin-inline:auto}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.skip-link{position:fixed;z-index:1000;top:12px;left:12px;padding:12px 16px;color:var(--surface-0);background:var(--paper);transform:translateY(-150%);transition:transform var(--duration-micro)}.skip-link:focus{transform:translateY(0)}:focus-visible{outline:2px solid var(--accent-bright);outline-offset:4px}.ambient-grid{position:fixed;z-index:-2;inset:0;pointer-events:none;opacity:.38;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:linear-gradient(to bottom,black,transparent 82%);mask-image:linear-gradient(to bottom,black,transparent 82%)}.ambient-grid:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 70% 12%,rgba(31,111,255,.08),transparent 28%),linear-gradient(100deg,var(--surface-0) 0 4%,transparent 4% 96%,var(--surface-0) 96%)}.page-progress{position:fixed;z-index:200;inset:0 0 auto;height:2px;pointer-events:none;background:linear-gradient(90deg,var(--accent) var(--progress, 0%),transparent 0)}.eyebrow{color:var(--text-muted);font:600 var(--text-meta)/1.3 var(--font-mono);letter-spacing:.11em;text-transform:uppercase}.button{display:inline-flex;min-height:48px;align-items:center;justify-content:space-between;gap:2rem;padding:.8rem 1rem;border:1px solid var(--line-strong);border-radius:0;cursor:pointer;font:600 var(--text-label)/1 var(--font-mono);letter-spacing:.05em;text-transform:uppercase;transition:color var(--duration-micro),background-color var(--duration-micro),border-color var(--duration-micro),transform var(--duration-ui) var(--ease-out)}.button:hover{transform:translateY(-2px)}.button--primary{color:#fff;border-color:var(--accent);background:var(--accent)}.button--primary:hover{background:#185ee0}.button--ghost{color:var(--text-secondary);background:#080b1066}.button--ghost:hover{color:var(--paper);border-color:var(--paper-dim)}.button--light{color:var(--surface-0);border-color:var(--paper);background:var(--paper)}.text-link{display:inline-flex;align-items:center;gap:.7rem;padding-block:.35rem;border-bottom:1px solid var(--accent);color:var(--paper);font:600 var(--text-label)/1.4 var(--font-mono);letter-spacing:.04em;text-transform:uppercase;transition:gap var(--duration-ui) var(--ease-out),color var(--duration-micro)}.text-link:hover{gap:1rem;color:var(--accent-bright)}.text-link--muted{color:var(--text-secondary);border-color:var(--line-strong)}.is-enhanced [data-reveal]{opacity:0;transform:translateY(12px);transition:opacity var(--duration-reveal) var(--ease-out),transform var(--duration-reveal) var(--ease-out)}.is-enhanced [data-reveal].is-visible{opacity:1;transform:translateY(0)}.hero h1>span,.hero h1>strong,.page-hero h1>span,.page-hero h1>em,.contact-hero h1>span{display:block}.is-enhanced [data-reveal] h1>span,.is-enhanced [data-reveal] h1>strong,.is-enhanced [data-reveal] h1>em{opacity:0;transform:translateY(.22em);transition:opacity var(--duration-ui),transform var(--duration-signature) var(--ease-out)}.is-enhanced [data-reveal].is-visible h1>span,.is-enhanced [data-reveal].is-visible h1>strong,.is-enhanced [data-reveal].is-visible h1>em{opacity:1;transform:none}.is-enhanced [data-reveal] h1>:nth-child(2){transition-delay:90ms}.site-header{position:fixed;z-index:100;inset:0 0 auto;height:var(--nav-height);border-bottom:1px solid transparent;transition:height var(--duration-ui) var(--ease-out),background-color var(--duration-ui),border-color var(--duration-ui)}.site-header.is-scrolled{height:68px;border-color:var(--line);background:#080b10db;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.site-nav{position:relative;z-index:1;height:100%;display:flex;align-items:center;justify-content:space-between}.site-nav__brand{display:flex;min-height:44px;align-items:center;gap:.8rem}.site-nav__mark{display:grid;width:36px;height:36px;place-items:center;color:#fff;border:1px solid var(--accent);background:var(--accent);font:800 var(--text-label)/1 var(--font-mono)}.site-nav__brand>span:last-child{display:flex;flex-direction:column}.site-nav__brand strong{font:700 var(--text-meta)/1.2 var(--font-mono);letter-spacing:.07em}.site-nav__brand small{margin-top:.18rem;color:var(--text-muted);font:var(--text-meta)/1.2 var(--font-mono);letter-spacing:.06em}.site-nav__desktop{display:flex;align-items:center;gap:2rem}.site-nav__desktop a{position:relative;padding:.65rem 0;color:var(--text-secondary);font:600 var(--text-meta)/1 var(--font-mono);letter-spacing:var(--tracking-label);text-transform:uppercase}.site-nav__desktop a:after{content:"";position:absolute;right:0;bottom:0;left:0;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:right;transition:transform .3s var(--ease-out)}.site-nav__desktop a:hover,.site-nav__desktop a[aria-current=page]{color:var(--paper)}.site-nav__desktop a:hover:after,.site-nav__desktop a[aria-current=page]:after{transform:scaleX(1);transform-origin:left}.site-nav__tools{display:flex;align-items:center;gap:.6rem}.nav-tool,.nav-menu-button{color:var(--text-secondary);border:1px solid var(--line);background:#0d1219bf;cursor:pointer}.nav-tool{min-width:44px;height:44px;padding-inline:.7rem;font:var(--text-meta)/1 var(--font-mono)}.nav-menu-button{display:none;width:40px;height:40px;align-items:center;justify-content:center;flex-direction:column;gap:6px}.nav-menu-button i{width:18px;height:1px;background:currentColor;transition:transform .3s var(--ease-out)}.nav-menu-button.is-active i:first-of-type{transform:translateY(3.5px) rotate(45deg)}.nav-menu-button.is-active i:last-of-type{transform:translateY(-3.5px) rotate(-45deg)}.mobile-menu{position:fixed;z-index:90;inset:0;height:100vh;height:100dvh;min-height:100vh;min-height:100dvh;overflow-y:auto;overscroll-behavior:contain;padding:calc(var(--nav-height) + 2rem) 4vw 2rem;pointer-events:none;background:var(--surface-0);opacity:0;transform:translateY(-12px);transition:opacity .25s,transform .35s var(--ease-out);isolation:isolate}.mobile-menu.is-open{pointer-events:auto;opacity:1;transform:none}.mobile-menu nav{display:flex;flex-direction:column;border-top:1px solid var(--line)}.mobile-menu a{display:grid;grid-template-columns:3rem 1fr;align-items:baseline;padding:1.2rem 0;border-bottom:1px solid var(--line)}.mobile-menu a span{color:var(--text-muted);font:var(--text-meta) var(--font-mono)}.mobile-menu a strong{font-size:clamp(1.6rem,8vw,3rem);font-weight:500}.mobile-menu__external{margin-top:1rem;color:var(--accent-bright)}.intro-sequence{display:none;position:fixed;z-index:999;inset:0;place-items:center;overflow:hidden;background:var(--paper);transition:opacity .45s .1s,visibility .45s .1s;animation:intro-safety-hide .01s 1.7s forwards}.js .intro-sequence{display:grid}.intro-sequence:after{content:"";position:absolute;inset:0;background:var(--surface-0);transform:translateY(100%);animation:intro-wipe .55s 1.05s var(--ease-out) forwards}.intro-sequence__track{display:flex;flex-direction:column;height:1.4rem;overflow:hidden;color:var(--surface-0);font:700 var(--text-meta)/1.4rem var(--font-mono);letter-spacing:.1em}.intro-sequence__track span{animation:intro-track 1s steps(3) forwards}.intro-sequence.is-finished{opacity:0;visibility:hidden}@keyframes intro-track{to{transform:translateY(-4.2rem)}}@keyframes intro-wipe{to{transform:translateY(0)}}@keyframes intro-safety-hide{to{opacity:0;visibility:hidden;pointer-events:none}}.hero{position:relative;display:grid;grid-template-columns:minmax(0,1.04fr) minmax(340px,.96fr);gap:3vw;min-height:100svh;padding-top:calc(var(--nav-height) + 5vh);padding-bottom:6rem;align-items:center}.hero__identity{position:relative;z-index:2;padding-top:3rem}.hero__eyebrow{display:flex;justify-content:space-between;align-items:center;max-width:690px;padding-bottom:1rem;border-bottom:1px solid var(--line);color:var(--text-muted);font:var(--text-meta) var(--font-mono);letter-spacing:var(--tracking-label);text-transform:uppercase}.status-dot{display:inline-flex;align-items:center;gap:.55rem;color:var(--paper-dim)}.status-dot:before{content:"";width:6px;height:6px;border-radius:50%;background:#5ad69d;box-shadow:0 0 0 4px #5ad69d1a}.hero h1{margin:clamp(2rem,5vh,4.5rem) 0 0;font-size:var(--text-display);font-weight:500;line-height:var(--leading-display);letter-spacing:var(--tracking-display);text-transform:uppercase}.hero h1 span,.hero h1 strong{display:block}.hero h1 span{color:var(--paper)}.hero h1 strong{margin-top:.08em;color:transparent;-webkit-text-stroke:1px rgba(241,238,231,.65);font-weight:500;white-space:nowrap}.hero__role{display:grid;grid-template-columns:.8fr 1.2fr;gap:2rem;max-width:700px;margin-top:3rem;padding-top:1.2rem;border-top:1px solid var(--line)}.hero__role p{margin:0}.hero__role p:first-child{color:var(--paper);font:700 var(--text-label)/1.5 var(--font-mono);letter-spacing:.05em;text-transform:uppercase}.hero__role p:last-child{max-width:42ch;color:var(--text-secondary);font-size:var(--text-body)}.hero__actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:2rem}.hero__core{min-width:0}.hero__stack{position:absolute;right:0;bottom:2.6rem;left:0;display:flex;flex-wrap:wrap;justify-content:center;gap:.7rem clamp(.8rem,2vw,2.2rem);color:var(--text-muted);font:var(--text-meta) var(--font-mono);letter-spacing:.08em;text-transform:uppercase}.hero__stack span:before{content:"+ ";color:var(--accent)}.hero__scroll{position:absolute;right:0;bottom:1.2rem;display:flex;align-items:center;gap:.8rem;color:var(--text-muted);font:var(--text-meta) var(--font-mono);text-transform:uppercase;transform:rotate(90deg) translateY(-100%);transform-origin:right bottom}.hero__scroll i{display:block;width:48px;height:1px;background:var(--line-strong)}.system-core{position:relative;min-height:min(70vh,720px);overflow:hidden;border:1px solid var(--line);background:radial-gradient(circle at 50% 50%,rgba(31,111,255,.11),transparent 25%),#0a0e14d1}.system-core:before,.system-core:after{content:"";position:absolute;z-index:1;pointer-events:none}.system-core:before{inset:8%;border:1px solid rgba(132,146,166,.12)}.system-core:after{inset:0;background:linear-gradient(90deg,transparent 49.8%,rgba(132,146,166,.15) 50%,transparent 50.2%),linear-gradient(transparent 49.8%,rgba(132,146,166,.15) 50%,transparent 50.2%)}.system-core__canvas{position:absolute;inset:0}.system-core__fallback{position:absolute;inset:12%;display:block}.system-core.is-canvas-ready .system-core__fallback{display:none}.core-plate{position:absolute;left:50%;top:50%;border:1px solid var(--line-strong);background:#0d1219e0;transform:translate(-50%,-50%) rotate(var(--rotation))}.core-plate--1{width:68%;aspect-ratio:1;--rotation: 12deg}.core-plate--2{width:50%;aspect-ratio:1;--rotation: -8deg;border-color:#4f8cff8c}.core-plate--3{width:32%;aspect-ratio:1;--rotation: 18deg}.core-plate--4{width:10%;aspect-ratio:1;--rotation: 0deg;background:var(--accent)}.core-axis{position:absolute;left:50%;top:50%;background:var(--line);transform:translate(-50%,-50%)}.core-axis--x{width:100%;height:1px}.core-axis--y{width:1px;height:100%}.system-core__labels span{position:absolute;z-index:2;left:var(--x);top:var(--y);color:var(--text-muted);font:var(--text-meta) var(--font-mono);letter-spacing:.08em}.system-core__labels span:before{content:"";display:inline-block;width:4px;height:4px;margin-right:.45rem;background:var(--accent)}.system-core__readout{position:absolute;z-index:3;right:1rem;bottom:1rem;left:1rem;display:flex;justify-content:space-between;color:var(--text-muted);font:var(--text-meta) var(--font-mono);letter-spacing:.07em}.system-core__readout span:last-child{color:var(--accent-bright)}.credibility-band{border-block:1px solid var(--line);background:var(--paper);color:var(--surface-0)}.credibility-band__grid{display:grid;grid-template-columns:repeat(4,1fr)}.credibility-band__grid>div{min-height:150px;padding:1.6rem;border-left:1px solid rgba(8,11,16,.16)}.credibility-band__grid>div:last-child{border-right:1px solid rgba(8,11,16,.16)}.credibility-band span{display:block;color:#596473;font:var(--text-meta) var(--font-mono);letter-spacing:.08em;text-transform:uppercase}.credibility-band strong{display:block;margin-top:2.4rem;font-size:clamp(1rem,1.4vw,1.4rem);font-weight:600;line-height:1.15;text-transform:uppercase}.section{padding-block:clamp(6rem,11vw,11rem)}.section--panel{border-block:1px solid var(--line);background:var(--surface-1)}.section-heading{display:grid;grid-template-columns:minmax(170px,.36fr) 1fr;gap:3rem;margin-bottom:clamp(4rem,8vw,8rem)}.section-heading__meta{display:flex;gap:1rem;padding-top:.8rem;color:var(--text-muted);font:var(--text-meta) var(--font-mono);letter-spacing:var(--tracking-label);text-transform:uppercase}.section-heading__meta span:first-child{color:var(--accent-bright)}.section-heading__body h2{max-width:13ch;margin:0;font-size:var(--text-title);font-weight:500;line-height:.96;letter-spacing:-.045em}.section-heading__body p{max-width:56ch;margin:2rem 0 0;color:var(--text-secondary);font-size:var(--text-lead)}.section-end{display:flex;justify-content:flex-end;margin-top:3rem}.project-list{display:flex;flex-direction:column;gap:clamp(7rem,13vw,13rem)}.project-showcase{display:grid;grid-template-columns:.78fr 1.22fr;gap:clamp(2rem,6vw,7rem);align-items:center}.project-showcase--reverse{grid-template-columns:1.22fr .78fr}.project-showcase--reverse .project-showcase__copy{order:2}.project-showcase__topline{display:grid;grid-template-columns:auto 1fr auto;gap:1rem;padding-bottom:.9rem;border-bottom:1px solid var(--line);color:var(--text-muted);font:var(--text-meta) var(--font-mono);letter-spacing:var(--tracking-label);text-transform:uppercase}.project-showcase__topline span:nth-child(2){text-align:center}.project-showcase h3{margin:1.5rem 0 .8rem;font-size:clamp(3rem,2.25rem + 3vw,6.5rem);font-weight:500;line-height:.9;letter-spacing:-.052em}.project-showcase__statement{max-width:19ch;margin:0;color:var(--paper-dim);font-size:clamp(1.3rem,2.2vw,2.2rem);line-height:1.1;letter-spacing:-.025em}.project-showcase__summary{max-width:52ch;margin:1.6rem 0;color:var(--text-secondary)}.project-showcase__facts{margin:2rem 0;border-top:1px solid var(--line)}.project-showcase__facts>div{display:grid;grid-template-columns:5rem 1fr;gap:1rem;padding:.75rem 0;border-bottom:1px solid var(--line)}.project-showcase__facts dt{color:var(--text-muted);font:var(--text-meta) var(--font-mono);text-transform:uppercase}.project-showcase__facts dd{margin:0;color:var(--paper-dim);font-size:var(--text-small)}.tag-list{display:flex;flex-wrap:wrap;gap:.45rem}.tag-list span{display:inline-flex;min-height:32px;align-items:center;padding:.35rem .6rem;color:var(--text-secondary);border:1px solid var(--line);background:#0d121973;font:var(--text-meta)/1.2 var(--font-mono);letter-spacing:.03em}.project-showcase__actions{display:flex;flex-wrap:wrap;gap:1.5rem;margin-top:2rem}.project-visual{position:relative;overflow:hidden;border:1px solid var(--line-strong);background-color:var(--surface-2);isolation:isolate}.project-visual:before{content:"";position:absolute;z-index:-1;inset:0;opacity:.7;background:linear-gradient(135deg,transparent 48%,rgba(255,255,255,.04) 48.1%,transparent 48.3%),radial-gradient(circle at var(--pointer-x, 65%) var(--pointer-y, 38%),var(--visual-glow, rgba(31, 111, 255, .24)),transparent 34%);transition:opacity var(--duration-ui)}.project-visual--cobalt{--visual-glow: rgba(31, 111, 255, .28);background-color:#0d1e34}.project-visual--paper{--visual-glow: rgba(241, 238, 231, .24);background-color:#c9ced4}.project-visual--ink{--visual-glow: rgba(62, 101, 167, .24);background-color:#141923}.project-visual--oxide{--visual-glow: rgba(209, 93, 63, .25);background-color:#1b1312}.project-visual__chrome{position:relative;z-index:5;display:flex;height:38px;align-items:center;gap:5px;padding:0 12px;color:var(--text-muted);border-bottom:1px solid rgba(157,171,191,.18);background:#080b10cc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.project-visual__chrome span{width:5px;height:5px;border:1px solid var(--text-muted);border-radius:50%}.project-visual__chrome b{margin-left:auto;font:var(--text-meta) var(--font-mono);letter-spacing:.08em;text-transform:uppercase}.project-visual__images{position:relative;display:grid;grid-template-columns:1fr;align-items:start;gap:clamp(.55rem,1vw,1rem);box-sizing:border-box;padding:clamp(.7rem,1.4vw,1.15rem) clamp(.7rem,1.4vw,1.15rem) 3.5rem;perspective:1400px;transform:rotateX(var(--tilt-x, 0deg)) rotateY(var(--tilt-y, 0deg));transition:transform var(--duration-reveal) var(--ease-out);transform-style:preserve-3d}.project-visual__images--3,.project-visual__images--4{grid-template-columns:repeat(2,minmax(0,1fr))}.project-visual__images--3 .project-visual__image--1{grid-column:1 / -1}.project-visual.is-tracking:before{opacity:1}.project-visual.is-tracking .project-visual__images{transition-duration:var(--duration-micro)}.project-visual__image{display:grid;min-width:0;margin:0;overflow:hidden;aspect-ratio:var(--media-ratio);place-items:center;border:1px solid rgba(241,238,231,.22);background:var(--surface-0);box-shadow:0 20px 50px #00000047;transition:border-color var(--duration-ui),box-shadow var(--duration-ui)}.project-visual__image img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;-o-object-position:center;object-position:center}.project-visual__image:hover{border-color:#4f8cffb3;box-shadow:0 20px 58px #0000005c,0 0 28px var(--visual-glow, rgba(31, 111, 255, .24))}.project-visual__stamp{position:absolute;z-index:6;right:1rem;bottom:1rem;padding:.45rem .6rem;color:var(--paper);border:1px solid var(--line-strong);background:#080b10c7;font:var(--text-meta) var(--font-mono);letter-spacing:.06em}.capability-map{display:grid;grid-template-columns:1.15fr .85fr;gap:1px;border:1px solid var(--line);background:var(--line)}.capability-map__diagram{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line)}.capability-node{position:relative;min-height:210px;padding:1.6rem;color:var(--text-secondary);border:0;background:var(--surface-0);text-align:left;cursor:pointer;transition:color .25s,background .25s}.capability-node:after{content:"";position:absolute;right:1.6rem;bottom:1.6rem;width:9px;height:9px;border:1px solid currentColor}.capability-node:hover,.capability-node.is-active{color:var(--paper);background:var(--surface-2)}.capability-node.is-active:after{border-color:var(--accent);background:var(--accent);box-shadow:0 0 0 8px var(--accent-soft)}.capability-node span{display:block;color:var(--accent-bright);font:var(--text-meta) var(--font-mono)}.capability-node strong{display:block;margin-top:4rem;font-size:clamp(1.5rem,2.8vw,3rem);font-weight:500;letter-spacing:-.04em}.capability-node small{display:block;margin-top:.4rem;color:var(--text-muted);font:var(--text-meta) var(--font-mono)}.capability-map__detail{display:grid;padding:clamp(2rem,4vw,4rem);background:var(--paper);color:var(--surface-0)}.capability-map__detail-panel{grid-area:1 / 1;visibility:hidden;pointer-events:none}.capability-map__detail-panel.is-active{visibility:visible;pointer-events:auto}.capability-map__detail-top{display:flex;justify-content:space-between;padding-bottom:1rem;border-bottom:1px solid rgba(8,11,16,.2);font:var(--text-meta) var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.capability-map__detail-top span{color:#596473}.capability-map__detail-top b{color:var(--accent)}.capability-map__detail p{margin:clamp(5rem,12vw,12rem) 0 2rem;font-size:clamp(1.3rem,2.4vw,2.3rem);line-height:1.13;letter-spacing:-.035em}.capability-map__detail .tag-list span{color:#4a5563;border-color:#080b1033;background:transparent}.experience-rail{border-top:1px solid var(--line)}.experience-rail article{display:grid;grid-template-columns:.36fr 1fr;gap:3rem;padding:clamp(2.5rem,5vw,5rem) 0;border-bottom:1px solid var(--line)}.experience-rail__year{display:flex;justify-content:space-between;color:var(--text-muted)}.experience-rail__year span{font:var(--text-meta) var(--font-mono)}.experience-rail__year b{color:var(--accent-bright);font:var(--text-meta) var(--font-mono)}.experience-rail h3{margin:.6rem 0 1rem;font-size:clamp(2rem,4vw,4.6rem);font-weight:500;line-height:1;letter-spacing:-.05em}.experience-rail p{max-width:62ch;margin:0;color:var(--text-secondary)}.recruiter-panel{display:grid;grid-template-columns:1fr 1fr auto;gap:3rem;align-items:end;margin-top:clamp(4rem,8vw,8rem);padding:clamp(2rem,4vw,4rem);color:var(--surface-0);background:var(--paper)}.recruiter-panel h3{margin:.5rem 0 0;font-size:clamp(2rem,3vw,3.7rem);font-weight:500;line-height:.95;letter-spacing:-.05em}.recruiter-panel p{margin:0;color:#4b5665}.recruiter-panel>div:last-child{display:flex;flex-direction:column;align-items:flex-start;gap:1rem}.recruiter-panel .text-link{color:var(--surface-0)}.closing-statement{padding-block:clamp(8rem,16vw,16rem)}.closing-statement h2{max-width:17ch;margin:2rem 0 3rem;font-size:clamp(3rem,2.2rem + 3.1vw,6.6rem);font-weight:500;line-height:.96;letter-spacing:-.05em}.closing-statement h2 em,.page-hero h1 em{color:transparent;-webkit-text-stroke:1px rgba(241,238,231,.58);font-style:normal}.page-hero{min-height:83svh;padding-top:calc(var(--nav-height) + 10vh);padding-bottom:7vh}.page-hero__meta{display:flex;justify-content:space-between;padding-bottom:1rem;border-bottom:1px solid var(--line);color:var(--text-muted);font:var(--text-meta) var(--font-mono);letter-spacing:var(--tracking-label);text-transform:uppercase}.page-hero h1{max-width:14ch;margin:clamp(3.5rem,8vh,7rem) 0 0;font-size:var(--text-display);font-weight:500;line-height:var(--leading-display);letter-spacing:var(--tracking-display);text-transform:uppercase}.page-hero__intro{display:flex;justify-content:flex-end;align-items:flex-end;gap:4rem;margin-top:5rem}.page-hero__intro p{max-width:46ch;margin:0;color:var(--text-secondary);font-size:clamp(1.05rem,1.6vw,1.45rem)}.project-index{margin-bottom:8rem;border-top:1px solid var(--line)}.project-index a{display:grid;grid-template-columns:4rem 1fr 1fr auto;gap:1rem;align-items:center;padding:1.2rem 0;border-bottom:1px solid var(--line);transition:color .2s,padding .3s var(--ease-out)}.project-index a:hover{padding-inline:.8rem;color:var(--accent-bright)}.project-index span,.project-index small{color:var(--text-muted);font:var(--text-meta) var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.project-index strong{font-size:1.25rem;font-weight:500}.case-study{position:relative;padding-block:clamp(6rem,10vw,11rem);overflow:hidden;border-top:1px solid var(--line);scroll-margin-top:68px}.case-study:before{content:attr(data-index);position:absolute;z-index:0;top:.08em;right:-.04em;color:#f1eee706;font:600 clamp(12rem,28vw,34rem)/.8 var(--font-sans);letter-spacing:-.1em;pointer-events:none}.case-study>.container{position:relative;z-index:1}.case-study:nth-child(2n){background:var(--surface-1)}.case-study__header{display:grid;grid-template-columns:.32fr 1fr;gap:3rem;margin-bottom:5rem}.case-study__header>div{display:flex;gap:1rem;padding-top:.8rem;color:var(--text-muted);font:var(--text-meta) var(--font-mono);text-transform:uppercase}.case-study__header h2{margin:0;font-size:clamp(3.8rem,2.7rem + 4vw,8rem);font-weight:500;line-height:.86;letter-spacing:var(--tracking-display)}.case-study__header>p{grid-column:2;max-width:25ch;margin:0;color:var(--paper-dim);font-size:clamp(1.5rem,3vw,3.2rem);line-height:1.05;letter-spacing:-.04em}.case-study__overview{display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,8vw,9rem);padding:clamp(3rem,7vw,7rem) 0}.case-study__overview>p{margin:0;color:var(--paper);font-size:clamp(1.5rem,2.7vw,2.8rem);line-height:1.1;letter-spacing:-.04em}.case-study__overview dl{margin:0;border-top:1px solid var(--line)}.case-study__overview dl>div{display:grid;grid-template-columns:6rem 1fr;padding:.8rem 0;border-bottom:1px solid var(--line)}.case-study__overview dt{color:var(--text-muted);font:var(--text-meta) var(--font-mono);text-transform:uppercase}.case-study__overview dd{margin:0;color:var(--text-secondary);font-size:var(--text-small)}.case-study__details{display:grid;grid-template-columns:repeat(5,1fr);border-block:1px solid var(--line)}.case-study__details>div{min-height:250px;padding:1.5rem;border-right:1px solid var(--line)}.case-study__details>div:last-child{border-right:0}.case-study__details span{color:var(--accent-bright);font:var(--text-meta) var(--font-mono);text-transform:uppercase}.case-study__details p{margin:5rem 0 0;color:var(--text-secondary);font-size:var(--text-small)}.case-study__footer{display:grid;grid-template-columns:1fr auto auto;gap:2rem;align-items:end;padding-top:2rem}.case-study__footer>span{color:var(--text-muted);font:var(--text-meta) var(--font-mono)}.project-directory{scroll-margin-top:68px}.project-catalog{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}.project-card{display:flex;min-height:340px;flex-direction:column;padding:1.8rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.project-card__meta{display:flex;justify-content:space-between;gap:1.5rem;color:var(--text-muted);font:var(--text-meta) var(--font-mono);letter-spacing:.04em;text-transform:uppercase}.project-card__meta span:last-child{text-align:right}.project-card h3{max-width:19ch;margin:clamp(3rem,6vw,5rem) 0 1rem;font-size:clamp(1.8rem,3vw,2.8rem);font-weight:500;line-height:1;letter-spacing:-.04em}.project-card>p{max-width:62ch;margin:0;color:var(--text-secondary);font-size:var(--text-small)}.project-card__footer{display:flex;flex-wrap:wrap;gap:1.5rem;align-items:flex-end;justify-content:space-between;margin-top:auto;padding-top:2.5rem}.project-card__footer .tag-list{flex:1 1 300px}.case-studies-intro{scroll-margin-top:68px;padding-bottom:clamp(3rem,6vw,6rem)}.page-hero--about{min-height:88svh}.page-hero--about h1{max-width:17ch;font-size:clamp(3.6rem,2.85rem + 2.8vw,6.7rem)}.page-hero--about .page-hero__intro{margin-top:3rem}.about-intro{display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(3rem,9vw,10rem);padding-bottom:clamp(7rem,14vw,14rem);align-items:center}.about-portrait__frame{position:relative;max-width:420px;padding:10%;border:1px solid var(--line);background:var(--surface-2)}.about-portrait__frame:before,.about-portrait__frame:after{content:"";position:absolute;width:30%;height:1px;background:var(--accent)}.about-portrait__frame:before{top:6%;left:0}.about-portrait__frame:after{right:0;bottom:6%}.about-portrait img{width:100%;filter:grayscale(1) contrast(1.08)}.about-portrait>div:last-child{display:flex;justify-content:space-between;max-width:420px;margin-top:.8rem;color:var(--text-muted);font:var(--text-meta)/1.5 var(--font-mono)}.about-portrait>div:last-child span:last-child{text-align:right}.about-copy .lead{margin-top:1rem;color:var(--paper);font-size:clamp(1.7rem,3.2vw,3.4rem);line-height:1.05;letter-spacing:-.045em}.about-copy>p:not(.lead){max-width:58ch;color:var(--text-secondary)}.principles-grid{display:grid;grid-template-columns:repeat(5,1fr);margin:0;padding:0;border:1px solid var(--line);list-style:none}.principles-grid li{min-height:320px;padding:1.5rem;border-right:1px solid var(--line)}.principles-grid li:last-child{border-right:0}.principles-grid span{color:var(--accent-bright);font:var(--text-meta) var(--font-mono)}.principles-grid h3{margin:7rem 0 1rem;font-size:1.7rem;font-weight:500}.principles-grid p{color:var(--text-secondary);font-size:var(--text-small)}.career-ledger{border-top:1px solid var(--line)}.career-ledger article{position:relative;display:grid;grid-template-columns:.35fr 1fr;gap:3rem;min-height:280px;padding:2rem 0;overflow:hidden;border-bottom:1px solid var(--line)}.career-ledger__period b{display:block;color:#f1eee714;font-size:clamp(4.5rem,8vw,9rem);font-weight:600;line-height:.82;letter-spacing:-.065em}.career-ledger__period span{color:var(--text-muted);font:var(--text-meta) var(--font-mono)}.career-ledger h3{margin:1rem 0;font-size:clamp(2rem,4vw,4.5rem);font-weight:500;line-height:1;letter-spacing:-.05em}.career-ledger p{max-width:60ch;color:var(--text-secondary)}.career-ledger__index{position:absolute;right:0;top:2rem;color:var(--accent-bright);font:var(--text-meta) var(--font-mono)}.career-ledger--education h3{max-width:19ch;font-size:clamp(1.8rem,3.4vw,3.8rem)}.personal-note{display:grid;grid-template-columns:1fr 1fr;gap:5rem;padding-block:clamp(7rem,14vw,14rem)}.personal-note h2{max-width:13ch;margin:1rem 0 0;font-size:clamp(2.6rem,5vw,5.6rem);font-weight:500;line-height:.97;letter-spacing:-.055em}.personal-note__items{border-top:1px solid var(--line)}.personal-note__items p{display:grid;grid-template-columns:9rem 1fr;gap:2rem;margin:0;padding:1.3rem 0;border-bottom:1px solid var(--line)}.personal-note__items strong{font:var(--text-meta) var(--font-mono);text-transform:uppercase}.personal-note__items span{color:var(--text-secondary)}.cv-toolbar{display:flex;justify-content:space-between;align-items:flex-end;gap:3rem;padding-top:calc(var(--nav-height) + 8rem);padding-bottom:4rem}.cv-toolbar h1{margin:.8rem 0 0;font-size:clamp(2.5rem,5vw,5.2rem);font-weight:500;line-height:.98;letter-spacing:-.05em}.cv-toolbar>div:last-child{display:flex;gap:.7rem}.resume{margin-bottom:8rem;color:#15191e;background:var(--paper);box-shadow:0 30px 100px #00000059}.resume__header{display:grid;grid-template-columns:1fr auto;gap:3rem;padding:clamp(2rem,5vw,5rem);color:var(--paper);background:#11161d}.resume__header>div:first-child>span{color:var(--accent-bright);font:var(--text-meta) var(--font-mono);letter-spacing:.1em}.resume__header h2{margin:.3rem 0;font-size:clamp(3rem,2.3rem + 3.4vw,6.2rem);font-weight:500;line-height:.92;letter-spacing:-.055em}.resume__header p{margin:1rem 0 0;color:var(--paper-dim);font:var(--text-meta) var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.resume__contact{display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-end;gap:.5rem;color:var(--text-secondary);font:var(--text-meta) var(--font-mono)}.resume__contact a:hover{color:var(--accent-bright)}.resume__layout{display:grid;grid-template-columns:.34fr .66fr}.resume__layout aside{padding:clamp(2rem,4vw,4rem);border-right:1px solid rgba(8,11,16,.16);background:#e4e1da}.resume__layout section+section{margin-top:3rem}.resume h3{margin:0 0 1.5rem;padding-bottom:.6rem;border-bottom:1px solid rgba(8,11,16,.25);color:#596473;font:700 var(--text-meta) var(--font-mono);letter-spacing:.08em;text-transform:uppercase}.resume aside h4{margin:1.5rem 0 .3rem;font-size:var(--text-label);text-transform:uppercase}.resume aside p{margin:0;color:#4d5865;font-size:var(--text-small);line-height:1.65}.resume aside p strong{display:block;margin-top:1.3rem;color:var(--accent);font:var(--text-meta) var(--font-mono)}.resume__main{padding:clamp(2rem,5vw,5rem)}.resume__profile{margin:0;font-size:clamp(1.2rem,2vw,1.8rem);line-height:1.35;letter-spacing:-.02em}.resume-entry{padding:1.8rem 0;border-bottom:1px solid rgba(8,11,16,.15)}.resume-entry header{display:flex;justify-content:space-between;gap:2rem}.resume-entry h4{margin:0;font-size:1.1rem}.resume-entry header p{margin:.2rem 0 0;color:#596473;font-size:var(--text-small)}.resume-entry header>span{color:var(--accent);font:var(--text-meta) var(--font-mono);white-space:nowrap}.resume-entry li,.resume-entry>p{color:#4d5865;font-size:var(--text-small);line-height:1.6}.resume-entry ul{padding-left:1.2rem}.resume-entry--project>p{margin-bottom:0}.contact-hero{min-height:88svh;padding-top:calc(var(--nav-height) + 13vh)}.contact-hero h1{max-width:17ch;margin:2rem 0;font-size:clamp(3.6rem,2.85rem + 2.8vw,6.7rem);font-weight:500;line-height:var(--leading-display);letter-spacing:var(--tracking-display);text-transform:uppercase}.contact-hero>p{max-width:50ch;color:var(--text-secondary);font-size:var(--text-lead)}.contact-hero__email{display:flex;justify-content:space-between;align-items:center;margin-top:clamp(4rem,9vh,8rem);padding:1rem 0;border-block:1px solid var(--line);font-size:clamp(1.2rem,2.5vw,2.5rem);transition:color .2s,padding .3s var(--ease-out)}.contact-hero__email:hover{padding-inline:1rem;color:var(--accent-bright)}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(3rem,9vw,10rem);padding-bottom:clamp(8rem,14vw,14rem)}.contact-direct{border-top:1px solid var(--line)}.contact-direct>div:not(.contact-status){padding:1.2rem 0;border-bottom:1px solid var(--line)}.contact-direct span{display:block;margin-bottom:.45rem;color:var(--text-muted);font:var(--text-meta) var(--font-mono);text-transform:uppercase}.contact-direct a,.contact-direct p{margin:0;color:var(--paper-dim);font-size:var(--text-small)}.contact-direct a:hover{color:var(--accent-bright)}.contact-status{display:flex;align-items:center;gap:.8rem;margin-top:2rem}.contact-status i{width:8px;height:8px;border-radius:50%;background:#5ad69d;box-shadow:0 0 0 6px #5ad69d1a}.contact-status span{margin:0;color:var(--paper-dim)}.contact-form{padding:clamp(2rem,4vw,4rem);color:var(--surface-0);background:var(--paper);color-scheme:light}.contact-form__heading{display:flex;justify-content:space-between;margin-bottom:3rem;padding-bottom:1rem;border-bottom:1px solid rgba(8,11,16,.2);font:var(--text-meta) var(--font-mono);text-transform:uppercase}.contact-form__heading b{color:#596473;font-weight:400}.contact-form label{display:block;margin-bottom:1.5rem}.contact-form label>span{display:block;margin-bottom:.45rem;color:#586473;font:var(--text-meta) var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.contact-form input,.contact-form select,.contact-form textarea{width:100%;padding:.85rem 0;color:var(--surface-0);border:0;border-bottom:1px solid rgba(8,11,16,.32);border-radius:0;outline:0;background:transparent;resize:vertical}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--accent);box-shadow:0 1px var(--accent)}.contact-form input:focus-visible,.contact-form select:focus-visible,.contact-form textarea:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.contact-form .button{width:100%;margin-top:1rem}.contact-form__note{color:#596473;font:var(--text-meta) var(--font-mono);text-align:center}.command-palette{width:min(92vw,640px);max-height:min(80vh,720px);padding:0;color:var(--paper);border:1px solid var(--line-strong);background:#0d1219f7;box-shadow:0 30px 100px #0009}.command-palette::backdrop{background:#030508c2;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.command-palette__panel{margin:0}.command-palette__search{display:grid;grid-template-columns:auto 1fr auto;gap:.8rem;align-items:center;padding:1rem;border-bottom:1px solid var(--line)}.command-palette__search>span{color:var(--accent-bright);font-size:1.3rem}.command-palette__search input{min-width:0;padding:.5rem 0;color:var(--paper);border:0;outline:0;background:transparent;font-size:1.1rem}.command-palette__search input:focus-visible{outline:2px solid var(--accent-bright);outline-offset:4px}.command-palette__search button{min-width:44px;min-height:44px;padding:.35rem .5rem;color:var(--text-muted);border:1px solid var(--line);background:transparent;font:var(--text-meta) var(--font-mono)}.command-palette__heading{padding:1rem 1rem .5rem;color:var(--text-muted);font:var(--text-meta) var(--font-mono);text-transform:uppercase}.command-palette__list{max-height:430px;overflow:auto;padding:.5rem}.command-palette__list :is(a,button){display:grid;width:100%;grid-template-columns:2rem 1fr auto;gap:.8rem;align-items:center;padding:.8rem;color:inherit;border:0;background:transparent;text-align:left;cursor:pointer}.command-palette__list :is(a,button).is-selected{background:var(--accent)}.command-palette__list kbd{display:grid;width:32px;height:32px;place-items:center;border:1px solid var(--line-strong);font:var(--text-meta) var(--font-mono)}.command-palette__list :is(a,button)>span{display:flex;flex-direction:column}.command-palette__list strong{font-size:var(--text-small)}.command-palette__list small{color:var(--text-muted);font-size:var(--text-meta)}.command-palette__list :is(a,button).is-selected small{color:#ffffffb3}.command-palette__list i{font-style:normal}.command-palette__footer{display:flex;flex-wrap:wrap;gap:1.2rem;padding:.7rem 1rem;color:var(--text-muted);border-top:1px solid var(--line);font:var(--text-meta) var(--font-mono)}.toast{position:fixed;z-index:300;right:1.5rem;bottom:1.5rem;padding:.8rem 1rem;color:var(--surface-0);background:var(--paper);font:var(--text-meta) var(--font-mono);opacity:0;transform:translateY(12px);transition:opacity var(--duration-micro),transform var(--duration-ui);pointer-events:none}.toast.is-visible{opacity:1;transform:none}.developer-overlay{position:fixed;z-index:500;left:1rem;bottom:1rem;width:min(360px,calc(100vw - 2rem));padding:1rem;color:var(--paper);border:1px solid var(--accent-bright);background:#080b10f0;box-shadow:0 24px 80px #0000007a;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);font:var(--text-meta)/1.4 var(--font-mono)}.developer-overlay[hidden]{display:none}.developer-overlay header{display:flex;justify-content:space-between;align-items:center;padding-bottom:.8rem;border-bottom:1px solid var(--line);color:var(--accent-bright);letter-spacing:.08em}.developer-overlay button{min-width:44px;min-height:44px;color:var(--text-secondary);border:1px solid var(--line);background:transparent;cursor:pointer;font:inherit}.developer-overlay dl{margin:.8rem 0 0}.developer-overlay dl div{display:grid;grid-template-columns:1fr auto;gap:1rem;padding:.38rem 0}.developer-overlay dt{color:var(--text-muted)}.developer-overlay dd{margin:0;color:var(--paper-dim)}.developer-overlay p{margin:.8rem 0 0;padding-top:.8rem;color:var(--text-muted);border-top:1px solid var(--line)}.is-developer-mode .ambient-grid{opacity:.72}.is-developer-mode main :is(section,article,header,form){outline:1px solid rgba(79,140,255,.2);outline-offset:-1px}.is-developer-mode main :is(.container,.project-showcase,.case-study__overview,.resume__layout){box-shadow:inset 0 0 0 1px #d15d3f2e}.is-developer-mode main :is(.hero,.project-showcase,.capability-map,.case-study,.resume){position:relative}.is-developer-mode main :is(.hero,.project-showcase,.capability-map,.case-study,.resume):after{position:absolute;z-index:20;top:.5rem;left:.5rem;padding:.22rem .36rem;color:var(--accent-bright);border:1px solid rgba(79,140,255,.38);background:#080b10db;font:var(--text-meta)/1 var(--font-mono);letter-spacing:.05em;pointer-events:none}.is-developer-mode main .hero:after{content:"<HERO>"}.is-developer-mode main .project-showcase:after{content:"<PROJECT_SHOWCASE>"}.is-developer-mode main .capability-map:after{content:"<CAPABILITY_MAP>"}.is-developer-mode main .case-study:after{content:"<CASE_STUDY>"}.is-developer-mode main .resume:after{content:"<RESUME>"}.error-page{display:grid;min-height:100svh;align-content:center;padding-block:calc(var(--nav-height) + 4rem) 4rem}.error-page__meta{display:flex;justify-content:space-between;padding-bottom:1rem;color:var(--text-muted);border-bottom:1px solid var(--line);font:var(--text-meta) var(--font-mono);letter-spacing:var(--tracking-label);text-transform:uppercase}.error-page h1{position:relative;margin:clamp(3rem,8vh,6rem) 0 1.5rem;font-size:clamp(7rem,27vw,26rem);font-weight:500;line-height:.65;letter-spacing:-.09em}.error-page h1:after{content:"ROUTE_NOT_FOUND";position:absolute;right:0;bottom:.12em;color:var(--accent-bright);font:var(--text-meta) var(--font-mono);letter-spacing:.08em}.error-page__copy{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3rem;align-items:end;margin-left:min(18vw,15rem)}.error-page__copy p{max-width:48ch;margin:0;color:var(--text-secondary);font-size:var(--text-lead)}@media (min-width: 1101px){.section-heading__body{padding-right:min(6vw,6rem)}.project-showcase:nth-child(3n+1){grid-template-columns:.7fr 1.3fr}.project-showcase:nth-child(3n+2){grid-template-columns:1.28fr .72fr}.project-showcase:nth-child(3n) .project-visual{margin-top:3rem}.case-study:nth-child(odd) .project-visual{margin-inline:-3vw 3vw}.case-study:nth-child(2n) .project-visual{margin-inline:3vw -3vw}}.site-footer{padding-top:clamp(6rem,10vw,10rem);border-top:1px solid var(--line);background:#05070a}.site-footer__grid{display:grid;grid-template-columns:1fr .25fr .25fr;gap:clamp(3rem,8vw,8rem);padding-bottom:6rem}.site-footer__lead p{margin:1.5rem 0 2.5rem;font-size:clamp(2.5rem,5vw,6rem);font-weight:400;line-height:.95;letter-spacing:-.055em}.site-footer__lead p strong{color:var(--accent-bright);font-weight:400}.site-footer__nav,.site-footer__links{display:flex;flex-direction:column;align-items:flex-start;gap:.7rem;padding-top:.4rem}.site-footer__nav>span,.site-footer__links>span{margin-bottom:1rem;color:var(--text-muted);font:var(--text-meta) var(--font-mono);text-transform:uppercase}.site-footer__nav a,.site-footer__links a,.site-footer__links button{min-height:44px;padding:.65rem 0;color:var(--text-secondary);border:0;background:transparent;font-size:var(--text-small);cursor:pointer}.site-footer__nav a:hover,.site-footer__links a:hover,.site-footer__links button:hover{color:var(--paper)}.site-footer__base{display:flex;justify-content:space-between;gap:2rem;padding-block:1.2rem;color:var(--text-muted);border-top:1px solid var(--line);font:var(--text-meta) var(--font-mono);letter-spacing:.04em;text-transform:uppercase}@media (max-width: 1100px){:root{--container: min(92vw, 980px)}.hero{grid-template-columns:1fr;padding-top:calc(var(--nav-height) + 6rem);padding-bottom:7rem}.hero__identity{padding-top:0}.hero__core{width:min(90%,720px);margin:0 auto}.system-core{min-height:590px}.hero__stack{bottom:2.5rem}.project-showcase,.project-showcase--reverse{grid-template-columns:1fr}.project-showcase--reverse .project-showcase__copy{order:0}.project-showcase__copy{max-width:720px}.case-study__details{grid-template-columns:repeat(2,1fr)}.case-study__details>div{border-bottom:1px solid var(--line)}.case-study__details>div:nth-child(2n){border-right:0}.principles-grid{grid-template-columns:repeat(2,1fr)}.principles-grid li{border-bottom:1px solid var(--line)}.principles-grid li:nth-child(2n){border-right:0}.site-footer__grid{grid-template-columns:1fr .3fr .3fr}}@media (max-width: 760px){:root{--container: calc(100vw - 32px) ;--nav-height: 68px}.ambient-grid{background-size:40px 40px}.site-nav__desktop{display:none}.nav-menu-button{display:flex;width:44px;height:44px}html.no-js .site-header{position:static;height:auto}html.no-js .site-nav{min-height:var(--nav-height);height:auto;flex-wrap:wrap;padding-block:.75rem}html.no-js .site-nav__desktop{order:3;display:flex;width:100%;gap:1.2rem;overflow-x:auto;padding-block:.75rem .25rem}html.no-js .nav-menu-button{display:none}.hero{display:block;min-height:auto;padding-top:calc(var(--nav-height) + 4rem)}.hero__eyebrow{align-items:flex-start;gap:1rem}.hero__eyebrow .status-dot{max-width:130px;text-align:right}.hero h1{font-size:clamp(3.35rem,14vw,5.7rem);line-height:.86;overflow-wrap:anywhere}.hero__role{grid-template-columns:1fr;gap:1rem}.hero__actions{flex-direction:column}.hero__actions .button{width:100%}.hero__core{width:100%;margin-top:4rem}.system-core{min-height:470px}.system-core__labels span{display:none}.hero__stack{position:static;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2rem}.hero__scroll{display:none}.credibility-band__grid{grid-template-columns:repeat(2,1fr)}.credibility-band__grid>div{min-height:130px;padding:1.1rem;border-bottom:1px solid rgba(8,11,16,.16)}.credibility-band strong{margin-top:1.5rem}.section-heading{grid-template-columns:1fr;gap:1.5rem}.section-heading__body h2{max-width:14ch}.project-showcase h3{font-size:3.5rem;overflow-wrap:anywhere}.project-visual__images--3,.project-visual__images--4{grid-template-columns:1fr}.project-visual__images--3 .project-visual__image--1{grid-column:auto}.project-visual__image--3,.project-visual__image--4{display:none}.capability-map{grid-template-columns:1fr}.capability-node{min-height:160px}.capability-node strong{margin-top:2rem}.capability-map__detail p{margin-top:4rem}.experience-rail article{grid-template-columns:1fr;gap:2rem}.recruiter-panel{grid-template-columns:1fr}.page-hero{min-height:75svh;padding-top:calc(var(--nav-height) + 6rem)}.page-hero h1{font-size:clamp(3.45rem,15vw,5.8rem);overflow-wrap:anywhere}.page-hero__intro{justify-content:flex-start;flex-direction:column;align-items:flex-start;gap:2rem}.project-index a{grid-template-columns:2.5rem 1fr auto}.project-index small{display:none}.case-study__header{grid-template-columns:1fr;gap:2rem}.case-study__header>p{grid-column:1}.case-study__header h2{font-size:clamp(3.35rem,15vw,5.8rem);overflow-wrap:anywhere}.case-study__overview,.case-study__details{grid-template-columns:1fr}.case-study__details>div{min-height:auto;border-right:0}.case-study__details p{margin-top:2rem}.case-study__footer,.project-catalog{grid-template-columns:1fr}.project-card{min-height:310px}.about-intro{grid-template-columns:1fr}.about-portrait__frame{margin-inline:auto}.principles-grid{grid-template-columns:1fr}.principles-grid li{min-height:260px;border-right:0}.principles-grid h3{margin-top:4rem}.career-ledger article{grid-template-columns:1fr;gap:2rem}.personal-note{grid-template-columns:1fr}.personal-note__items p{grid-template-columns:1fr;gap:.7rem}.cv-toolbar{flex-direction:column;align-items:flex-start;padding-top:calc(var(--nav-height) + 5rem)}.cv-toolbar>div:last-child{flex-direction:column;width:100%}.cv-toolbar .button{width:100%}.resume__header{grid-template-columns:1fr}.resume__contact{align-items:flex-start}.resume__layout{grid-template-columns:1fr}.resume__layout aside{border-right:0;border-bottom:1px solid rgba(8,11,16,.16)}.resume-entry header{flex-direction:column;gap:.5rem}.contact-grid{grid-template-columns:1fr}.contact-hero{min-height:78svh}.contact-hero h1{font-size:clamp(3.35rem,15vw,5.8rem);overflow-wrap:anywhere}.site-footer__grid{grid-template-columns:1fr 1fr}.site-footer__lead{grid-column:1 / -1}.site-footer__base{flex-direction:column;gap:.5rem}.error-page__copy{grid-template-columns:1fr;margin-left:0}.error-page__copy .button{width:100%}}@media (max-width: 430px){.nav-tool{display:none}.hero h1{font-size:3.15rem}.hero__stack{grid-template-columns:repeat(2,1fr)}.system-core{min-height:400px}.credibility-band__grid{width:100%}.credibility-band__grid>div{padding:1rem}.project-showcase h3{font-size:3rem}.capability-map__diagram{grid-template-columns:1fr}.capability-node{min-height:145px}.page-hero h1,.contact-hero h1{font-size:3.25rem}.site-footer__grid{grid-template-columns:1fr}.site-footer__lead{grid-column:auto}.contact-form{padding:1.3rem}.contact-form__heading{gap:1rem}}@media (max-width: 380px){.hero h1{font-size:clamp(2.5rem,13vw,3.15rem)}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.is-enhanced [data-reveal]{opacity:1;transform:none}.intro-sequence{display:none}}@media print{:root{--container: 100%}body{color:#111;background:#fff;font-size:10pt}.site-header,.site-footer,.ambient-grid,.page-progress,.command-palette,.toast,.cv-toolbar{display:none!important}.resume{width:100%;margin:0;box-shadow:none;print-color-adjust:exact;-webkit-print-color-adjust:exact}.resume__header{padding:1.5cm}.resume__layout aside,.resume__main{padding:1.2cm}.resume__layout section+section{margin-top:1.5rem}.resume-entry{padding:1rem 0}.resume__header,.resume__layout section,.resume-entry{-moz-column-break-inside:avoid;break-inside:avoid}@page{size:A4;margin:0}}
