*,: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:IBM Plex Mono,ui-monospace,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}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.bottom-0{bottom:0}.left-0{left:0}.right-0{right:0}.z-10{z-index:10}.z-\[1\]{z-index:1}.col-span-2{grid-column:span 2 / span 2}.mx-auto{margin-left:auto;margin-right:auto}.mb-10{margin-bottom:2.5rem}.mb-12{margin-bottom:3rem}.mb-16{margin-bottom:4rem}.mb-2{margin-bottom:.5rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-12{margin-top:3rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.size-max{width:-moz-max-content;width:max-content;height:-moz-max-content;height:max-content}.h-10{height:2.5rem}.h-12{height:3rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-8{height:2rem}.w-10{width:2.5rem}.w-12{width:3rem}.w-3\.5{width:.875rem}.w-4{width:1rem}.w-8{width:2rem}.w-full{width:100%}.min-w-0{min-width:0px}.max-w-6xl{max-width:72rem}.flex-1{flex:1 1 0%}.flex-shrink-0,.shrink-0{flex-shrink:0}.grow{flex-grow:1}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-10{gap:2.5rem}.gap-12{gap:3rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-x-2\.5{-moz-column-gap:.625rem;column-gap:.625rem}.gap-y-1{row-gap:.25rem}.space-y-2\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.625rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.625rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.whitespace-nowrap{white-space:nowrap}.rounded-\[4px\]{border-radius:4px}.rounded-full{border-radius:9999px}.rounded-none{border-radius:0}.bg-\[\#f6f6f6\]{--tw-bg-opacity: 1;background-color:rgb(246 246 246 / var(--tw-bg-opacity, 1))}.bg-\[\#fdda24\]{--tw-bg-opacity: 1;background-color:rgb(253 218 36 / var(--tw-bg-opacity, 1))}.bg-\[rgba\(0\,167\,181\,0\.12\)\]{background-color:#00a7b51f}.bg-surface-container-highest{--tw-bg-opacity: 1;background-color:rgb(238 238 238 / var(--tw-bg-opacity, 1))}.p-4{padding:1rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pl-1\.5{padding-left:.375rem}.pl-2{padding-left:.5rem}.pr-2{padding-right:.5rem}.pr-2\.5{padding-right:.625rem}.text-center{text-align:center}.font-body{font-family:Inter,system-ui,sans-serif}.font-label{font-family:Inter,system-ui,sans-serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-\[10px\]{font-size:10px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.text-\[\#00a7b5\]{--tw-text-opacity: 1;color:rgb(0 167 181 / var(--tw-text-opacity, 1))}.text-\[\#0f0f0f\],.text-on-surface{--tw-text-opacity: 1;color:rgb(15 15 15 / var(--tw-text-opacity, 1))}.text-on-surface-variant,.text-outline{--tw-text-opacity: 1;color:rgb(87 87 87 / var(--tw-text-opacity, 1))}.ring-1{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-inset{--tw-ring-inset: inset}.ring-\[\#00a7b5\]\/25{--tw-ring-color: rgb(0 167 181 / .25)}.ring-\[\#e6e6e6\]{--tw-ring-opacity: 1;--tw-ring-color: rgb(230 230 230 / var(--tw-ring-opacity, 1))}.ring-\[\#fdda24\]{--tw-ring-opacity: 1;--tw-ring-color: rgb(253 218 36 / var(--tw-ring-opacity, 1))}.ring-\[rgba\(0\,167\,181\,0\.28\)\]{--tw-ring-color: rgba(0,167,181,.28)}.ring-outline-variant\/40{--tw-ring-color: rgb(230 230 230 / .4)}.blur{--tw-blur: blur(8px);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)}.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)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:root{--paper: #ffffff;--paper-alt: #f6f6f6;--ink: #0f0f0f;--ink-soft: #212121;--mute: rgb(15 15 15 / .7);--hair: rgb(15 15 15 / .12);--yellow: #fdda24;--marker: #ffec6b;--teal: #00a7b5;--primary: #0f0f0f;--ease-out: cubic-bezier(.23, 1, .32, 1);--ease-in-out: cubic-bezier(.77, 0, .175, 1);--ease-drawer: cubic-bezier(.32, .72, 0, 1);--dur-press: .14s;--dur-hover: .18s;--dur-popover: .2s;--dur-exit: .18s;--dur-drawer: .32s}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:Inter,system-ui,sans-serif;overflow-x:hidden}.font-headline{font-family:Lora,Georgia,serif}.text-on-surface{color:var(--ink)}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:var(--paper)}::-webkit-scrollbar-thumb{background:#cfcfcf;border-radius:9999px}@media(hover:hover)and (pointer:fine){::-webkit-scrollbar-thumb:hover{background:#b0b0b0}}::-moz-selection{background:var(--yellow);color:var(--ink)}::selection{background:var(--yellow);color:var(--ink)}:focus:not(:focus-visible){outline:none}:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.skip-link{position:absolute;left:16px;top:16px;z-index:10000;padding:12px 16px;background:var(--ink);color:var(--paper);font-family:Inter,system-ui,sans-serif;font-size:14px;font-weight:600;text-decoration:none;border-radius:9999px;transform:translateY(-180%);transition:transform var(--dur-popover) var(--ease-out)}.skip-link:focus{transform:none}.btn-primary{background:var(--ink);color:var(--paper);font-family:Inter,system-ui,sans-serif;font-size:16px;font-weight:600;padding:10px 22px;min-height:44px;border:1px solid transparent;border-radius:9999px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;transition:transform var(--dur-press) var(--ease-out),background-color var(--dur-hover) var(--ease-out)}.hidden.btn-primary{display:none}@media(hover:hover)and (pointer:fine){.btn-primary:hover{background:#2a2a2a}.btn-primary.is-accent:hover{background:#ffe45a}}.btn-primary:active{transform:scale(.97);transition-duration:.1s}.btn-primary.is-accent{background:var(--yellow);color:var(--ink)}.btn-ghost{background:transparent;border:1px solid var(--hair);border-radius:9999px;color:var(--ink);font-family:Inter,system-ui,sans-serif;font-size:16px;font-weight:600;padding:10px 22px;min-height:44px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;transition:transform var(--dur-press) var(--ease-out),background-color var(--dur-hover) var(--ease-out),border-color var(--dur-hover) var(--ease-out)}@media(hover:hover)and (pointer:fine){.btn-ghost:hover{background:var(--paper-alt);border-color:var(--ink)}}.btn-ghost:active{transform:scale(.97);transition-duration:.1s}.btn-accent{background:var(--yellow);color:var(--ink);font-family:Inter,system-ui,sans-serif;font-size:13px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:8px 14px;min-height:36px;border:none;border-radius:4px;cursor:pointer}.city-nav{position:fixed;top:0;left:0;width:100%;height:80px;z-index:50;display:flex;justify-content:space-between;align-items:center;padding:0 1.25rem;background:var(--paper);border-bottom:1px solid transparent;transition:box-shadow var(--dur-hover) var(--ease-out),border-color var(--dur-hover) var(--ease-out)}.city-nav.is-scrolled{border-bottom-color:var(--hair);box-shadow:0 8px 20px #0f0f0f0f}.city-nav-actions{display:none;align-items:center;gap:.9rem}@media(min-width:768px){.city-nav{padding:0 2rem}.city-nav-actions{display:flex}}.nav-cv-quiet{margin:0;padding:.4rem .15rem;border:none;background:transparent;font-family:Inter,system-ui,sans-serif;font-size:13px;font-weight:500;color:var(--mute);cursor:pointer;text-decoration:none;transition:color var(--dur-hover) var(--ease-out),transform var(--dur-press) var(--ease-out)}@media(hover:hover)and (pointer:fine){.nav-cv-quiet:hover{color:var(--ink)}}.nav-cv-quiet:active{color:var(--ink);transform:scale(.97)}.city-nav-cta{gap:.35rem;font-size:14px;min-height:44px;padding:8px 18px}.city-wordmark{font-family:Inter,system-ui,sans-serif;font-weight:600;font-size:1rem;color:var(--ink);text-decoration:none;flex-shrink:0}.nav-link{position:relative;font-family:Inter,system-ui,sans-serif;font-size:15px;font-weight:400;color:var(--mute);text-decoration:none;padding-bottom:2px;transition:color var(--dur-hover) var(--ease-out)}.nav-link.active{color:var(--ink)}@media(hover:hover)and (pointer:fine){.nav-link:hover{color:var(--ink)}}.nav-beam{position:absolute;left:0;right:0;bottom:-10px;height:2px;background:var(--yellow)}.hero-section{position:relative;padding:112px 1.25rem 4rem;background:var(--paper)}.hero-grid{width:100%;max-width:72rem;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"intro photo" "rest rest";-moz-column-gap:1rem;column-gap:1rem;row-gap:1.5rem;align-items:start}.hero-intro{grid-area:intro;min-width:0}.hero-rest{grid-area:rest}.hero-name{font-family:Lora,Georgia,serif;font-weight:400;font-size:clamp(1.7rem,7vw,2.55rem);line-height:1.18;letter-spacing:-.03em;color:var(--ink-soft);margin-bottom:.9rem}.hero-name-line{display:block;padding-block:.06em}.hero-marker{display:inline-block;color:inherit;background:transparent;overflow:visible}.hero-cycle,.hero-founder{position:relative;overflow:visible}.rough-annotation{z-index:0}.hero-blur-text,.hero-blur-letter{display:inline}.hero-cycle{display:inline-grid;justify-items:start;color:var(--ink);vertical-align:baseline;isolation:isolate}.hero-cycle-sizer{grid-area:1 / 1;visibility:hidden;pointer-events:none;white-space:nowrap}.hero-cycle-word{grid-area:1 / 1;white-space:nowrap}@media(prefers-reduced-motion:reduce){.hero-blur-letter,.hero-cycle-word{filter:none!important}}.hero-role{font-family:Inter,system-ui,sans-serif;font-size:1rem;font-weight:500;color:var(--ink);margin-bottom:.35rem}.hero-founder{font-family:Inter,system-ui,sans-serif;font-size:.875rem;font-weight:500;color:var(--ink);margin:0 0 .35rem}.hero-loc{font-family:Inter,system-ui,sans-serif;font-size:.875rem;color:var(--teal);margin-bottom:0}.hero-desc{font-family:Inter,system-ui,sans-serif;font-size:1.05rem;line-height:1.65;color:var(--mute);max-width:38rem;margin-bottom:1.5rem}.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}.hero-portrait{grid-area:photo;display:block;width:min(9.25rem,34vw);height:min(9.25rem,34vw);margin:0;justify-self:end;align-self:start;-o-object-fit:cover;object-fit:cover;-o-object-position:50% 10%;object-position:50% 10%;border-radius:50%;border:1px solid var(--hair);box-shadow:0 14px 36px #0f0f0f1a}@media(min-width:640px){.hero-name{font-size:clamp(2.2rem,5.5vw,3.2rem)}.hero-portrait{width:min(12.5rem,28vw);height:min(12.5rem,28vw)}}@media(min-width:1024px){.hero-section{padding:128px 3rem 5rem}.hero-grid{grid-template-columns:1.15fr minmax(18rem,22rem);grid-template-areas:"intro photo" "rest photo";-moz-column-gap:4rem;column-gap:4rem;row-gap:1.25rem;align-items:center}.hero-name{font-size:clamp(2.6rem,8vw,4.2rem);margin-bottom:1.25rem}.hero-portrait{width:22rem;height:22rem;margin:0;justify-self:end;align-self:center}}.social-row{display:flex;flex-wrap:wrap;gap:.65rem;list-style:none;margin:0;padding:0}.social-key{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;min-height:44px;padding:0;border:1px solid var(--hair);border-radius:9999px;color:var(--ink);text-decoration:none;background:var(--paper);transition:border-color var(--dur-hover) var(--ease-out),background-color var(--dur-hover) var(--ease-out),transform var(--dur-press) var(--ease-out)}@media(hover:hover)and (pointer:fine){.social-key:hover{background:var(--yellow);border-color:var(--yellow)}}.social-key:active{transform:scale(.97);transition-duration:.1s}.card-hover{transition:background-color var(--dur-hover) var(--ease-out),box-shadow var(--dur-hover) var(--ease-out),transform var(--dur-hover) var(--ease-out),border-color var(--dur-hover) var(--ease-out)}.exp-log{list-style:none;margin:0;padding:0;position:relative}.exp-log:before{content:"";position:absolute;top:1.15rem;bottom:0;left:7.25rem;width:1px;margin-left:-.5px;background:var(--hair);pointer-events:none;z-index:1}.exp-log .exp-entry{display:grid;grid-template-columns:6.75rem 1rem minmax(0,1fr);--exp-accent: var(--yellow)}.exp-date-col{grid-column:1;padding-top:.85rem;padding-right:.75rem;text-align:right;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:12px;color:var(--mute);font-variant-numeric:tabular-nums;white-space:nowrap;transition:color var(--dur-hover) var(--ease-out)}.exp-date-mobile{display:none}.exp-rail{grid-column:2;position:relative}.exp-log>li{display:block}.exp-item{list-style:none}.exp-item+.exp-item .exp-entry{border-top:1px solid var(--hair);padding-top:2rem}a.exp-entry{text-decoration:none;color:inherit}.exp-node{position:absolute;top:1rem;left:50%;width:9px;height:9px;border-radius:50%;background:transparent;border:1px solid var(--ink);transform:translate(-50%);z-index:2;transition:background-color var(--dur-hover) var(--ease-out),transform .16s var(--ease-out)}.exp-body{grid-column:3;padding-left:1.5rem;padding-bottom:2.5rem;min-width:0}.exp-log>li:last-child .exp-body{padding-bottom:0}.exp-cta{display:inline-flex;align-items:center;gap:.25rem;margin-left:auto;font-family:Inter,system-ui,sans-serif;font-size:13px;font-weight:600;color:var(--ink);opacity:.55;transition:opacity var(--dur-hover) var(--ease-out)}.exp-head{display:flex;align-items:flex-start;gap:1rem}.exp-meta{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem}.exp-role{color:var(--teal)}.exp-place{margin:.2rem 0 0;font-family:Inter,system-ui,sans-serif;font-size:.8125rem;color:var(--mute)}.edu-inst{margin:0;font-family:Inter,system-ui,sans-serif;font-size:.875rem;color:var(--mute)}.exp-copy{max-width:68ch;font-family:Inter,system-ui,sans-serif;font-size:.95rem;line-height:1.65;color:var(--mute)}.exp-entry{transition:opacity .28s var(--ease-out),filter .28s var(--ease-out)}.exp-log.is-armed .exp-item:not(.is-locked) .exp-copy{opacity:.72}.exp-item.is-locked .exp-node{background:var(--ink)}.exp-item.is-locked .exp-date-col{color:var(--ink)}@media(hover:hover)and (pointer:fine){.exp-entry:hover .exp-date-col{color:var(--ink)}.exp-entry:hover .exp-node{background:var(--ink);transform:translate(-50%) scale(1.08)}.exp-entry:hover .exp-head h3,.exp-entry:hover .exp-body>h3{color:var(--ink)}.exp-entry:hover .exp-cta{opacity:1}}.exp-head h3,.exp-body>h3{font-family:Lora,Georgia,serif;font-weight:600;color:var(--ink);transition:color var(--dur-hover) var(--ease-out)}.exp-log.is-cv .exp-copy li svg{display:none}.exp-log.is-cv .exp-copy li{position:relative;padding-left:.95rem}.exp-log.is-cv .exp-copy li:before{content:"";position:absolute;left:0;top:.55em;width:5px;height:5px;background:var(--ink)}.proj-block+.proj-block{margin-top:3.75rem}.proj-group{font-family:Lora,Georgia,serif;font-size:1.35rem;font-weight:600;letter-spacing:-.02em;color:var(--ink);margin:0 0 1.75rem}.exp-logo{width:auto;height:28px;max-width:2.75rem;-o-object-fit:contain;object-fit:contain;flex-shrink:0;background:none;border:none}.exp-logo-icon{width:22px;height:22px;flex-shrink:0;color:var(--ink)}@media(max-width:767px){.exp-log:before{left:.5rem}.exp-log .exp-entry{grid-template-columns:1rem minmax(0,1fr)}.exp-date-col{display:none}.exp-date-mobile{display:inline;flex-shrink:0;margin-left:auto}.exp-rail{grid-column:1}.exp-body{grid-column:2;padding-left:1.1rem;padding-bottom:2rem}.exp-head{gap:.75rem}}@media(hover:hover)and (pointer:fine){.card-hover:hover{background:var(--paper-alt)!important;box-shadow:0 10px 28px #0f0f0f12;transform:translateY(-1px)}}.tech-badge{display:inline-block;padding:2px 8px;background:var(--paper-alt);color:var(--ink);font-family:Inter,system-ui,sans-serif;font-size:11px;border-radius:9999px}.status-dot{width:6px;height:6px;border-radius:50%;background:var(--yellow);display:inline-block;margin-right:4px}.lang-switch{display:inline-flex;align-items:baseline;gap:.3rem}.lang-switch-sep{font-family:Inter,system-ui,sans-serif;font-size:12px;font-weight:400;color:var(--hair);pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.lang-switch-opt{margin:0;padding:.35rem 0;border:none;background:transparent;font-family:Inter,system-ui,sans-serif;font-size:12px;font-weight:500;letter-spacing:.04em;line-height:1;color:var(--mute);cursor:pointer;transition:color var(--dur-hover) var(--ease-out)}.lang-switch-opt.is-active{color:var(--ink)}@media(hover:hover)and (pointer:fine){.lang-switch-opt:hover{color:var(--ink)}}.sec-title{font-family:Lora,Georgia,serif;font-size:clamp(2rem,4vw,3.15rem);font-weight:600;letter-spacing:-.03em;line-height:1.12;color:var(--ink)}.divider{flex:1;height:1px;background:var(--hair)}.scope-section{position:relative;padding:6rem 1.5rem;background:var(--paper)}.scope-section.alt{background:var(--paper-alt)}#stack.scope-section{padding-top:1.75rem;padding-bottom:1.75rem}#experience.scope-section{padding-top:2.25rem}.scope-section.ink{background:var(--ink);color:var(--paper)}.scope-section.ink .sec-title,.scope-section.ink .exp-head h3,.scope-section.ink .text-on-surface{color:var(--paper)}.scope-section.ink .exp-copy,.scope-section.ink .edu-inst,.scope-section.ink .exp-date-col,.scope-section.ink .hero-desc{color:#ffffffb8}.scope-section.ink .divider,.scope-section.ink .exp-item+.exp-item .exp-entry{border-color:#ffffff24}.scope-section.ink .exp-log:before{background:#ffffff2e}.scope-section.ink .exp-node{border-color:var(--yellow)}.scope-section.ink .exp-item.is-locked .exp-node{background:var(--yellow)}.scope-section.ink .scope-frame{background:transparent;border-color:#ffffff24;box-shadow:none}@media(min-width:768px){.scope-section{padding-left:3rem;padding-right:3rem}}@media(min-width:1024px){.scope-section{padding-left:6rem;padding-right:6rem}}.marquee-wrap{-webkit-mask-image:linear-gradient(to right,transparent,black 8%,black 92%,transparent);mask-image:linear-gradient(to right,transparent,black 8%,black 92%,transparent)}.marquee-track{display:flex;width:-moz-max-content;width:max-content;animation:marquee 36s linear infinite}.marquee-wrap:hover .marquee-track{animation-play-state:paused}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.stack-marquee-row:hover .stack-marquee-track{animation-play-state:paused}.stack-marquee-track{display:flex;width:-moz-max-content;width:max-content;animation:marquee 52s linear infinite}.stack-marquee-item{display:flex;align-items:center;gap:14px;padding:0 36px;white-space:nowrap}.stack-marquee-icon{width:40px;height:40px;flex-shrink:0;-o-object-fit:contain;object-fit:contain}.stack-marquee-label{font-family:Inter,system-ui,sans-serif;font-size:14px;color:var(--mute)}.stack-marquee-sep{color:#cfcfcf;font-size:20px;margin-left:36px}.carousel-progress{height:100%;background:var(--yellow);transform-origin:left;animation:carouselProgress 4.5s linear forwards}@keyframes carouselProgress{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.btn-cv-fab{position:absolute;left:0;right:0;bottom:.55rem;z-index:2;width:52px;height:52px;margin-inline:auto;border:1px solid transparent;border-radius:50%;background:var(--ink);color:var(--paper);cursor:pointer;display:flex;align-items:center;justify-content:center;overflow:hidden;box-shadow:0 8px 22px #0f0f0f2e;transition:transform var(--dur-press) var(--ease-out),box-shadow var(--dur-hover) var(--ease-out)}.btn-cv-fab:active{transform:scale(.97);transition-duration:.1s}.qr-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:85;margin:0;padding:0;border:none;background:#0f0f0f57;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);cursor:pointer}.qr-screen{position:fixed;top:max(1.25rem,env(safe-area-inset-top,0px));right:1rem;bottom:max(1.25rem,env(safe-area-inset-bottom,0px));left:1rem;z-index:90;display:flex;flex-direction:column;align-items:center;justify-content:center;width:auto;max-width:22.5rem;height:auto;max-height:min(22.5rem,calc(100dvh - 2.5rem));aspect-ratio:1;margin:auto;padding:1.35rem 1.1rem 1.15rem;border:1px solid var(--hair);border-radius:18px;background:var(--paper);color:var(--ink);overflow:hidden;box-shadow:0 22px 48px #0f0f0f38}.qr-screen-inner{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%}.qr-screen-close{position:absolute;top:0;right:0;z-index:1;width:44px;height:44px;display:grid;place-items:center;margin:0;padding:0;border:none;border-radius:50%;background:transparent;color:var(--ink);cursor:pointer;transition:background-color var(--dur-hover) var(--ease-out),transform var(--dur-press) var(--ease-out)}@media(hover:hover)and (pointer:fine){.qr-screen-close:hover{background:var(--paper-alt)}}.qr-screen-close:active{transform:scale(.97);transition-duration:.1s}.qr-screen-panel{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;width:100%;padding-top:.5rem}.qr-fab-icon{display:flex;align-items:center;justify-content:center}.qr-fab-img{width:min(100%,16.5rem);height:auto;aspect-ratio:1;display:block;background:#fff}.qr-fab-hint{margin:0;font-family:Inter,system-ui,sans-serif;font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--mute)}.mob-tabbar{display:none}@media(max-width:767px){.mob-tabbar{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:50;align-items:stretch;justify-content:space-around;height:calc(3.85rem + env(safe-area-inset-bottom,0px));padding:0 .25rem env(safe-area-inset-bottom,0px);background:var(--paper);border-top:1px solid var(--hair);overflow:visible}.mob-tabbar.is-qr-open{z-index:80}body{padding-bottom:calc(3.85rem + env(safe-area-inset-bottom,0px))}}.mob-tab{position:relative;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;min-width:0;min-height:44px;padding:.45rem .2rem .35rem;color:var(--mute);text-decoration:none;transition:color var(--dur-hover) var(--ease-out)}.mob-tab.is-active{color:var(--ink)}.mob-tab-beam{position:absolute;top:0;left:22%;right:22%;height:2px;background:var(--yellow)}.mob-tab-label{font-family:Inter,system-ui,sans-serif;font-size:9px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;line-height:1.15;text-align:center;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mob-tab-cv{position:relative;flex:1;display:flex;align-items:center;justify-content:center;min-width:0;overflow:visible}.scope-frame{position:relative;overflow:hidden;border:1px solid var(--hair);border-radius:4px;background:var(--paper)}.panel{border:1px solid var(--hair);border-radius:4px;background:var(--paper)}@media(min-width:768px){.scope-frame{padding:2.25rem 2rem 1.75rem}}.stat-num{font-family:Lora,Georgia,serif;font-size:clamp(2.4rem,5vw,3.4rem);letter-spacing:-.03em;line-height:1;color:var(--yellow)}@media(max-width:767px){.city-nav{height:52px;padding:0 1rem}.city-wordmark{font-size:.875rem}.sec-title{font-size:2rem}.hero-section{padding:4.25rem 1rem 3rem}.hero-name{margin-bottom:.75rem}.hero-desc{font-size:.95rem;line-height:1.55}#carousel-track{height:260px!important}}.dialog-scrim{display:flex;position:absolute;top:0;right:0;bottom:0;left:0;background:#0f0f0f66;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);align-items:center;justify-content:center;padding:20px}.dialog-scrim.is-archive{align-items:flex-start;padding:40px 20px;overflow-y:auto;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.dialog-panel{background:var(--paper);border:1px solid var(--hair);border-radius:8px;box-shadow:0 24px 60px #0f0f0f2e}.dialog-close{display:grid;place-items:center;width:44px;height:44px;margin:0;padding:0;border:none;border-radius:9999px;background:transparent;color:var(--mute);cursor:pointer;font-size:20px;line-height:1;transition:background-color var(--dur-hover) var(--ease-out),color var(--dur-hover) var(--ease-out),transform var(--dur-press) var(--ease-out)}@media(hover:hover)and (pointer:fine){.dialog-close:hover{background:var(--paper-alt);color:var(--ink)}}.dialog-close:active{transform:scale(.97);transition-duration:.1s}.chip-filter{font-family:Inter,system-ui,sans-serif;font-size:13px;font-weight:600;padding:8px 16px;min-height:36px;background:transparent;color:var(--mute);border:1px solid var(--hair);border-radius:9999px;cursor:pointer;margin-bottom:16px;transition:background-color var(--dur-hover) var(--ease-out),color var(--dur-hover) var(--ease-out),border-color var(--dur-hover) var(--ease-out),transform var(--dur-press) var(--ease-out)}.chip-filter.is-active{background:var(--ink);color:var(--paper);border-color:var(--ink)}.chip-filter:active{transform:scale(.97);transition-duration:.1s}.archive-card{background:var(--paper);border:1px solid var(--hair);border-radius:4px;padding:20px;display:flex;flex-direction:column;gap:12px;transition:background-color .2s var(--ease-out)}@media(hover:hover)and (pointer:fine){.archive-card:hover{background:var(--yellow)}.archive-card:hover .archive-chip{background:#0f0f0f14}}.archive-chip{font-family:Inter,system-ui,sans-serif;font-size:11px;color:var(--ink);background:var(--paper-alt);padding:2px 8px;border-radius:9999px;transition:background-color .2s var(--ease-out)}.carousel-slide{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;z-index:1;pointer-events:none;transition:opacity .4s var(--ease-out)}.carousel-slide.is-active{opacity:1;z-index:2;pointer-events:auto}.carousel-arrow{position:absolute;top:50%;z-index:20;width:44px;height:44px;margin-top:8px;display:flex;align-items:center;justify-content:center;border:none;border-radius:9999px;background:#0f0f0fb8;color:#fff;cursor:pointer;transform:translateY(-50%);transition:background-color var(--dur-hover) var(--ease-out),color var(--dur-hover) var(--ease-out),transform .14s var(--ease-out)}.carousel-arrow.is-left{left:16px}.carousel-arrow.is-right{right:16px}@media(hover:hover)and (pointer:fine){.carousel-arrow:hover{background:var(--yellow);color:var(--ink)}}.carousel-arrow:active{transform:translateY(-50%) scale(.97);transition-duration:.1s}.carousel-dot{width:8px;height:8px;padding:0;border:none;border-radius:50%;background:#cfcfcf;cursor:pointer;transition:background-color var(--dur-hover) var(--ease-out),transform var(--dur-press) var(--ease-out)}.carousel-dot.is-active{background:var(--yellow)}.carousel-dot:active{transform:scale(.9);transition-duration:.1s}.carousel-thumb{height:60px;padding:0;border:1px solid transparent;border-radius:4px;overflow:hidden;opacity:.5;background:none;cursor:pointer;transition:border-color var(--dur-hover) var(--ease-out),opacity var(--dur-hover) var(--ease-out),transform var(--dur-press) var(--ease-out)}.carousel-thumb.is-active{opacity:1;border-color:var(--ink)}.carousel-thumb:active{transform:scale(.97);transition-duration:.1s}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.marquee-track,.stack-marquee-track{animation:none}.btn-primary:active,.btn-ghost:active,.social-key:active,.nav-cv-quiet:active,.dialog-close:active,.chip-filter:active,.btn-cv-fab:active,.qr-screen-close:active,.carousel-arrow:active,.carousel-thumb:active{transform:none}.carousel-arrow:active{transform:translateY(-50%)}.card-hover:hover{transform:none}.exp-entry:hover .exp-node{transform:translate(-50%)}.exp-log.is-armed .exp-item:not(.is-locked) .exp-copy{opacity:1}.exp-entry,.carousel-slide{transition:none}}@media(min-width:768px){.md\:flex-row{flex-direction:row}.md\:gap-3{gap:.75rem}.md\:px-12{padding-left:3rem;padding-right:3rem}.md\:text-lg{font-size:1.125rem;line-height:1.75rem}}@media(min-width:1024px){.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:gap-20{gap:5rem}.lg\:px-24{padding-left:6rem;padding-right:6rem}}.\[\&_svg\]\:h-4 svg{height:1rem}.\[\&_svg\]\:h-5 svg{height:1.25rem}.\[\&_svg\]\:h-6 svg{height:1.5rem}.\[\&_svg\]\:w-4 svg{width:1rem}.\[\&_svg\]\:w-5 svg{width:1.25rem}.\[\&_svg\]\:w-6 svg{width:1.5rem}
