*,: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%;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::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}:root{--background: 0 0% 100%;--foreground: 0 0% 3.9%;--card: 0 0% 100%;--card-foreground: 0 0% 3.9%;--popover: 0 0% 100%;--popover-foreground: 0 0% 3.9%;--primary: 0 0% 9%;--primary-foreground: 0 0% 98%;--secondary: 0 0% 96.1%;--secondary-foreground: 0 0% 9%;--muted: 0 0% 96.1%;--muted-foreground: 0 0% 45.1%;--accent: 0 0% 96.1%;--accent-foreground: 0 0% 9%;--destructive: 0 84.2% 60.2%;--destructive-foreground: 0 0% 98%;--border: 0 0% 89.8%;--input: 0 0% 89.8%;--ring: 0 0% 3.9%;--chart-1: 12 76% 61%;--chart-2: 173 58% 39%;--chart-3: 197 37% 24%;--chart-4: 43 74% 66%;--chart-5: 27 87% 67%;--radius: 4px}*{border-color:hsl(var(--border))}body{background-color:hsl(var(--background));color:hsl(var(--foreground))}.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}.static{position:static}.inline{display:inline}.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))}.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)}.transition{transition-property:color,background-color,border-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--bg-primary: #0c0c0f;--bg-secondary: #111114;--bg-tertiary: #16161a;--surface-container-high: #1b1b20;--surface-container-highest: #202026;--text-primary: #ebe7de;--text-lede: #c8c2b4;--text-secondary: #a39e92;--text-dim: #716b5f;--accent: #d9c08a;--accent-strong: #e7d2a6;--accent-tertiary: #aa8858;--accent-glow: rgba(217, 192, 138, .1);--signal-live: #4ade80;--border: #2e2e35;--border-faint: rgba(255, 255, 255, .05);--border-accent: rgba(217, 192, 138, .2);--font-display: "Fraunces", Georgia, serif;--font-body: "Hanken Grotesk", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "Spline Sans Mono", "Monaco", monospace;--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--shadow-sm: 0 2px 4px rgba(0, 0, 0, .25);--shadow-md: 0 8px 24px rgba(0, 0, 0, .35);--shadow-lg: 0 20px 60px rgba(0, 0, 0, .45);--z-content: 2;--z-noise: 50;--z-tabbar: 120;--z-progress: 1000;--z-chat: 1100}*{margin:0;padding:0;box-sizing:border-box;scrollbar-width:thin;scrollbar-color:rgba(217,192,138,.3) transparent}html{scroll-behavior:smooth}body{font-family:var(--font-body);background:var(--bg-primary);color:var(--text-secondary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow:hidden}.app{position:relative;width:100vw;height:100vh;overflow:hidden}h1,h2{font-family:var(--font-display);letter-spacing:-.025em}h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}button:active,a:active,.project-item:active,.publication-item:active,.nav-item:active{transform:scale(.98)!important;transition:transform .1s ease!important}ul{list-style-type:none}ul:not(.timeline-highlights) li{position:relative;padding-left:1.5rem}ul:not(.timeline-highlights) li:before{content:"▹ ";position:absolute;left:0;color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}::selection{background:#d9c08a47;color:#f0ebde}.skip-link{position:absolute;top:-200px;left:12px;z-index:999;padding:10px 16px;background:var(--bg-secondary);color:var(--accent);border:1px solid var(--accent);border-radius:6px;font-family:var(--font-body);font-size:.85rem;font-weight:600;text-decoration:none;transition:top .2s var(--ease-out)}.skip-link:focus,.skip-link:focus-visible{top:12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(hover:none),(pointer:coarse){.social-link{min-width:44px;min-height:44px}.nav-item{min-height:44px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.recursion-overlay,.cursor-glow,.cinematic-noise{display:none!important}.marquee-track{animation:none!important}}@media(prefers-contrast:more){:root{--text-secondary: #c9c3b6;--text-dim: #98917f;--border-faint: rgba(255, 255, 255, .14)}.section{opacity:1}.tech-tag{color:var(--text-secondary);border-color:#fff3}}.cinematic-noise{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:var(--z-noise);opacity:.06;background:url(/noise.svg)}.cursor-glow{position:fixed;width:1000px;height:1000px;border-radius:50%;background:radial-gradient(circle,rgba(217,192,138,.25) 0%,rgba(217,192,138,.08) 25%,rgba(217,192,138,.02) 50%,transparent 80%);pointer-events:none;transform:translate(-50%,-50%);z-index:1;transition:opacity .8s ease;filter:blur(48px);will-change:transform}@media(hover:none),(pointer:coarse),(max-width:1023px){.cursor-glow{display:none!important}}.technical-grid{background-image:radial-gradient(circle at 1px 1px,rgba(255,255,255,.1) 1px,transparent 0);background-size:24px 24px}.app:before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;background:radial-gradient(100rem 70rem at -12% -18%,rgba(214,166,94,.055),transparent 60%),radial-gradient(80rem 55rem at 108% 112%,rgba(170,136,88,.03),transparent 65%)}.scroll-progress-bar{position:fixed;top:0;left:0;width:100%;height:2px;background:#d9c08a0f;z-index:var(--z-progress)}.scroll-progress-fill{height:100%;width:100%;background:linear-gradient(90deg,var(--accent) 0%,var(--accent-tertiary) 100%);transform:scaleX(var(--scroll-p, 0));transform-origin:left center;transition:transform .1s linear;box-shadow:0 0 10px #d9c08a66,0 0 2px #aa88584d}.scroll-progress-bar:after{content:"";position:absolute;top:50%;left:calc(var(--scroll-p, 0) * 100%);transform:translate(-50%,-50%);width:5px;height:5px;border-radius:50%;background:#f0eadcf2;box-shadow:0 0 6px 2px #d9c08acc,0 0 16px 5px #d9c08a4d;opacity:clamp(0,calc(var(--scroll-p, 0) * 25),1);transition:left .1s linear,opacity .3s var(--ease-out)}.recursion-overlay{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;pointer-events:none;overflow:hidden}.recursion-wipe{position:absolute;inset:0;background:var(--bg-primary);-webkit-clip-path:circle(0% at center);clip-path:circle(0% at center);animation:iris-in 1.2s cubic-bezier(.85,0,.15,1) forwards}.recursion-ring{position:absolute;width:100vmax;height:100vmax;border:2px solid var(--accent);border-radius:50%;opacity:0;transform:scale(0);animation:ring-expand 1.2s cubic-bezier(.85,0,.15,1) forwards;box-shadow:0 0 50px var(--accent-glow),inset 0 0 50px var(--accent-glow)}@keyframes iris-in{0%{-webkit-clip-path:circle(0% at center);clip-path:circle(0% at center)}30%{-webkit-clip-path:circle(10% at center);clip-path:circle(10% at center)}to{-webkit-clip-path:circle(150% at center);clip-path:circle(150% at center)}}@keyframes ring-expand{0%{transform:scale(0);opacity:0}10%{opacity:.5}to{transform:scale(1.5);opacity:0;border-width:10px}}.is-glitching{animation:glitch-vibration .3s steps(2) infinite;filter:contrast(1.2) brightness(1.1)}@keyframes glitch-vibration{0%{transform:translate(0);filter:hue-rotate(0deg)}25%{transform:translate(2px,-2px);filter:hue-rotate(90deg)}50%{transform:translate(-2px,2px);filter:hue-rotate(180deg)}75%{transform:translate(1px,1px);filter:hue-rotate(270deg)}to{transform:translate(0);filter:hue-rotate(360deg)}}.layout{display:flex;width:100%;max-width:1800px;margin:0 auto;height:100vh;position:relative;z-index:var(--z-content)}.sidebar{flex:0 0 clamp(400px,40%,680px);padding:5rem 4rem;display:flex;flex-direction:column;justify-content:space-between;height:100vh;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:rgba(217,192,138,.2) transparent}.sidebar::-webkit-scrollbar{width:4px}.sidebar::-webkit-scrollbar-track{background:transparent}.sidebar::-webkit-scrollbar-thumb{background:#d9c08a0f;border-radius:4px}.sidebar::-webkit-scrollbar-thumb:hover{background:#d9c08a26}.sidebar-content{display:flex;flex-direction:column;justify-content:space-between;height:100%;overflow-x:hidden}@keyframes sidebarFadeIn{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.content-scroll{flex:1;min-width:0;height:100vh;overflow-y:auto;overflow-x:clip;padding:5rem 4rem 4rem;scrollbar-width:none;animation:contentRise .8s var(--ease-out) .15s both}@keyframes contentRise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.content-scroll::-webkit-scrollbar{display:none}.content-wrapper{width:100%;max-width:960px;margin:0 auto}.sidebar-header{animation:sidebarFadeIn .7s var(--ease-out) both;animation-delay:.05s;margin-bottom:3rem;display:flex;flex-direction:column;padding:0;position:relative;background:#11111599;-webkit-backdrop-filter:blur(16px) saturate(180%);backdrop-filter:blur(16px) saturate(180%);border:1px solid var(--border-faint);border-radius:4px;box-shadow:0 4px 6px -1px #00000026,0 2px 4px -2px #0000001a,0 10px 15px -3px #00000040;transition:all .4s cubic-bezier(.16,1,.3,1);overflow:hidden}.sidebar-header:before{content:"";position:absolute;top:0;left:0;right:40%;height:1px;background:linear-gradient(90deg,rgba(217,192,138,.45),transparent);z-index:1}.card-seal{position:absolute;top:12px;right:12px;width:62px;height:62px;z-index:1;pointer-events:none}.seal-ring{fill:none;stroke:#ffffff0e;transition:stroke .6s var(--ease-out)}.seal-text{fill:#ffffff12;font-family:var(--font-mono);font-weight:500;transition:fill .6s var(--ease-out)}.seal-monogram{fill:#ffffff14;font-family:var(--font-display);font-style:italic;font-size:12px;letter-spacing:.5px;transition:fill .6s var(--ease-out)}.sidebar-header:hover .seal-ring{stroke:#d9c08a59}.sidebar-header:hover .seal-text{fill:#d9c08a8c}.sidebar-header:hover .seal-monogram{fill:#d9c08acc}.sidebar-header:hover{background:#111115bf;border-color:var(--border-faint);box-shadow:0 20px 25px -5px #0006,0 8px 10px -6px #0000004d,0 0 0 1px #d9c08a0d;transform:translateY(-2px)}.header-main-content{padding:2rem;display:flex;align-items:center;gap:1.5rem}.header-info{flex:1}.name{font-family:var(--font-display);font-size:clamp(1.75rem,2.4vw + .8rem,2.5rem);font-weight:480;font-optical-sizing:auto;color:var(--text-primary);margin-bottom:.25rem;line-height:1.08;letter-spacing:-.015em}.title{font-family:var(--font-display);font-size:clamp(.95rem,.4vw + .85rem,1.05rem);font-weight:500;color:var(--accent);margin-bottom:0;letter-spacing:-.025em;opacity:.92}.tagline{font-size:.875rem;color:var(--text-dim);line-height:1.55;margin-top:.4rem;letter-spacing:.005em}.profile-image-container{width:96px;height:96px;border-radius:4px;overflow:hidden;border:1px solid var(--border-faint);box-shadow:0 4px 16px #0000004d;flex-shrink:0;margin-top:.25rem;background:linear-gradient(135deg,#d9c08a14,#d9c08a08);transition:box-shadow .4s ease,border-color .4s ease}.profile-image-container:hover{box-shadow:0 0 0 2px #d9c08a59,0 8px 24px #0006,0 0 20px #d9c08a1f;border-color:#d9c08a4d}.profile-image{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.profile-image:hover{transform:scale(1.05)}.key-stats{display:flex;width:100%;border-top:1px solid var(--border-faint);margin-top:0;background:#0c0c0f4d}.stat-item{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1rem;background:transparent;border:none;border-radius:0;position:relative;flex:1;min-width:0}.stat-item:not(:last-child){border-right:1px solid var(--border-faint)}.stat-item:hover{background:#d9c08a0d}.stat-value{font-family:var(--font-display);font-size:1.5rem;font-weight:440;font-optical-sizing:auto;color:var(--accent-strong);line-height:1.1;margin-bottom:.1rem;transition:transform .3s ease,color .3s ease;letter-spacing:-.025em;font-variant-numeric:tabular-nums}.stat-item:hover .stat-value{color:var(--text-primary);transform:scale(1.05)}.stat-label{font-family:var(--font-mono);font-size:.6875rem;color:var(--text-dim);text-transform:uppercase;letter-spacing:.08em;font-weight:700;line-height:1.4;transition:color .3s ease;margin-top:.2rem}.stat-item:hover .stat-label{color:var(--text-secondary)}.skills-marquee{animation:sidebarFadeIn .7s var(--ease-out) both;animation-delay:.2s;overflow:hidden;width:100%;max-width:100%;margin:1.5rem 0;position:relative;padding:.75rem 0;background:linear-gradient(90deg,#0c0c0f99,#11111566,#0c0c0f99);border-top:1px solid var(--border-faint);border-bottom:1px solid var(--border-faint);z-index:20;box-sizing:border-box}.skills-marquee:before,.skills-marquee:after{content:"";position:absolute;top:0;bottom:0;width:60px;z-index:2;pointer-events:none}.skills-marquee:before{left:0;background:linear-gradient(90deg,rgba(12,12,15,1),transparent)}.skills-marquee:after{right:0;background:linear-gradient(90deg,transparent,rgba(12,12,15,1))}.marquee-track{display:flex;animation:marquee-scroll 25s linear infinite;width:-webkit-max-content;width:max-content;will-change:transform;backface-visibility:hidden;-webkit-backface-visibility:hidden}.marquee-track:hover,.skills-marquee:hover .marquee-track{animation-play-state:paused}.marquee-content{display:flex;flex-shrink:0;gap:2rem;padding:0 1rem}.skill-icon{width:26px;height:26px;color:#d9c08a99;flex-shrink:0;cursor:default;position:relative;display:flex;flex-direction:column;align-items:center;gap:.5rem;transition:color .2s var(--ease-out),transform .25s var(--ease-spring)}.skill-icon:after{content:attr(title) attr(data-tooltip);position:absolute;top:calc(100% + .75rem);font-size:.625rem;font-weight:700;color:var(--text-primary);white-space:nowrap;opacity:0;transform:translateY(-4px);transition:all .3s ease;pointer-events:none;letter-spacing:.05em;text-transform:uppercase;background:#0c0c0ff2;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);padding:.35rem .65rem;border-radius:4px;border:1px solid var(--border-faint);box-shadow:0 4px 12px #0006;z-index:10}.marquee-track:hover .skill-icon:after{opacity:.85;transform:translateY(0)}.skill-icon:hover:after{opacity:1;border-color:#d9c08a66;box-shadow:0 4px 16px #00000080,0 0 0 1px #d9c08a1a}.skill-icon:hover{color:#f0ebde;transform:translateY(-2px);filter:drop-shadow(0 0 8px rgba(217,192,138,.4))}.skill-icon svg{width:100%;height:100%}.marquee-divider{width:1px;height:14px;align-self:center;background:#d9c08a38;flex-shrink:0}@keyframes marquee-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.nav{display:flex;flex-direction:column;gap:1.5rem;margin-top:1rem;animation:sidebarFadeIn .7s var(--ease-out) both;animation-delay:.35s}.nav-item{display:flex;align-items:center;gap:1rem;background:none;border:none;color:var(--text-secondary);font-size:.8125rem;font-weight:700;text-transform:uppercase;letter-spacing:.15em;cursor:pointer;padding:.5rem 0;text-align:left;position:relative;transition:color .3s var(--ease-out),transform .35s var(--ease-spring),letter-spacing .3s var(--ease-out);will-change:transform}.nav-index{font-family:var(--font-mono);font-size:.625rem;font-weight:500;color:var(--text-dim);letter-spacing:.08em;transition:color .3s var(--ease-out)}.nav-item:hover .nav-index,.nav-item.active .nav-index{color:var(--accent)}.nav-item.passed .nav-index{color:#d9c08a8c}.nav-item.passed .nav-line{background-color:#d9c08a59}.nav-line{width:2rem;height:1px;background-color:var(--text-dim);transition:all .5s var(--ease-out);position:relative;overflow:hidden}.nav-line:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(217,192,138,.6),transparent);transform:translate(-100%);transition:transform .6s ease}.nav-item:hover .nav-line:after,.nav-item.active .nav-line:after{transform:translate(100%)}.nav-item:hover .nav-line,.nav-item.active .nav-line{width:5rem;height:2px;background:linear-gradient(90deg,var(--accent) 0%,var(--accent-strong) 100%);box-shadow:0 0 12px #d9c08a80}.nav-item:hover,.nav-item.active{color:var(--text-primary);transform:translate(4px)}.nav-item.active{font-weight:800}.sidebar-footer{margin-top:auto;display:flex;flex-direction:column;gap:1.25rem;animation:sidebarFadeIn .7s var(--ease-out) both;animation-delay:.5s}.sidebar-meta{display:flex;align-items:center;gap:.6rem;font-family:var(--font-mono);font-size:.625rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim)}.sidebar-meta:before{content:"";width:12px;height:1px;background:#d9c08a66;flex-shrink:0}.meta-sep{opacity:.5}.resume-download{display:inline-flex;align-items:center;justify-content:center;gap:.75rem;padding:1.125rem 1.75rem;background:linear-gradient(135deg,#d9c08a26,#5c47234d);-webkit-backdrop-filter:blur(16px) saturate(180%);backdrop-filter:blur(16px) saturate(180%);border:1px solid var(--border-faint);border-radius:4px;color:var(--text-primary);font-size:.875rem;font-weight:700;text-decoration:none;letter-spacing:.02em;position:relative;overflow:hidden;transition:all .4s var(--ease-spring);box-shadow:0 4px 16px #0c0c0f4d}.resume-download:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:radial-gradient(circle,rgba(217,192,138,.15),transparent);transform:translate(-50%,-50%);transition:width .6s ease,height .6s ease}.resume-download:after{content:"";position:absolute;inset:0;border-radius:4px;padding:1.5px;background:linear-gradient(135deg,#d9c08a66,#5c472333);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .4s ease}.resume-download:hover:before{width:400px;height:400px}.resume-download:hover:after{opacity:1}.resume-download:hover{transform:translateY(-2px);background:#111115cc;box-shadow:0 12px 32px #0c0c0f73,0 0 0 1px var(--border-accent);border-color:#d9c08a66}.resume-download svg,.resume-download span{position:relative;z-index:1}.social-links{display:flex;gap:1.5rem;align-items:center}.social-link{color:var(--text-secondary);transition:all .4s var(--ease-spring);display:flex;align-items:center;position:relative;padding:.5rem;border-radius:4px}.social-link:before{content:"";position:absolute;inset:0;border-radius:4px;background:#d9c08a14;opacity:0;transition:opacity .3s ease}.social-link:hover:before{opacity:1}.social-link:hover{color:var(--text-primary);transform:translateY(-2px) scale(1.05);filter:drop-shadow(0 4px 12px rgba(217,192,138,.3))}.section{margin-bottom:9rem;opacity:.65;transition:opacity 1.2s var(--ease-out),transform 1.2s var(--ease-out);position:relative;contain:layout paint}#about.section{opacity:1;margin-bottom:5rem}.section.section-active,.section:hover{opacity:1}.section.section-active:before{content:"";position:absolute;inset:-2rem;background:radial-gradient(circle at center,rgba(217,192,138,.03),transparent 70%);pointer-events:none;border-radius:4px}.section.section-clicked{animation:sectionPulse 1.5s ease-out}@keyframes sectionPulse{0%,to{opacity:1}50%{opacity:1;transform:translateY(-2px)}}.section.section-clicked:before{background:radial-gradient(circle at center,rgba(217,192,138,.06),transparent 70%)}.section-title-mobile{display:none}.section-label{display:flex;align-items:center;gap:1rem;font-family:var(--font-mono);font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.22em;color:var(--text-dim);margin-bottom:2rem;opacity:.9}.section-label:before{content:"";width:12px;height:2px;background:var(--accent);border-radius:1px;opacity:.6;flex-shrink:0}.section-label:after{content:"";flex:1;height:1px;background:linear-gradient(90deg,rgba(217,192,138,.14),transparent 80%);transform:scaleX(0);transform-origin:left center;transition:transform 1s var(--ease-out);order:1}.section.section-active .section-label:after,.section:hover .section-label:after{transform:scaleX(1)}.section-label-meta{order:2;color:var(--text-dim);letter-spacing:.16em;white-space:nowrap;font-variant-numeric:tabular-nums;opacity:0;transform:translate(6px);transition:opacity .9s var(--ease-out) .35s,transform .9s var(--ease-out) .35s}.section.section-active .section-label-meta,.section:hover .section-label-meta{opacity:.75;transform:translate(0)}.section-content{font-size:1.0625rem}.section-number{position:absolute;top:0;right:0;font-family:var(--font-display);font-style:italic;font-weight:340;font-optical-sizing:auto;font-size:clamp(3.5rem,8vw,7rem);letter-spacing:-.02em;color:transparent;-webkit-text-stroke:1px rgba(217,192,138,.5);opacity:.22;pointer-events:none;-webkit-user-select:none;user-select:none;z-index:0;line-height:.85;transition:opacity 1.2s var(--ease-out)}.section.section-active .section-number{opacity:.5}.section>*:not(.section-number){position:relative;z-index:1}@media(prefers-reduced-motion:no-preference){.section .project-item,.section .publication-item{opacity:0;transform:translateY(14px);transition:opacity .55s var(--ease-out),transform .55s var(--ease-out)}.section .project-item.visible,.section .publication-item.visible{opacity:1;transform:translateY(0)}}.about-intro{display:flex;flex-direction:column;gap:.875rem;position:relative;border-left:2px solid rgba(217,192,138,.12);padding:.75rem 0 .5rem 1.75rem}.about-intro:before{content:"";position:absolute;left:-2px;top:0;width:2px;height:40px;background:linear-gradient(180deg,var(--accent) 0%,rgba(217,192,138,.3) 100%);border-radius:1px;box-shadow:0 0 10px #d9c08a4d;animation:quoteBarDraw .9s var(--ease-out) .5s both}@keyframes quoteBarDraw{0%{transform:scaleY(0);transform-origin:top center}to{transform:scaleY(1);transform-origin:top center}}.about-static{font-size:1.25rem;line-height:1.75;color:var(--text-secondary);letter-spacing:-.01em;font-family:var(--font-body);font-weight:400;margin:0}.highlight{font-family:var(--font-display);font-style:italic;font-optical-sizing:auto;font-weight:480;color:var(--accent-strong)}.about-dynamic-wrapper{position:relative}.about-dynamic-text{font-family:var(--font-display);font-optical-sizing:auto;font-size:clamp(1.4rem,1.3vw + 1.05rem,2rem);line-height:1.4;font-weight:440;letter-spacing:-.02em;margin:0}.about-dim{color:#c4bdadb8;-webkit-text-fill-color:rgba(196,189,173,.72)}@keyframes clipCharge{0%{-webkit-clip-path:inset(0 100% 0 0);clip-path:inset(0 100% 0 0)}to{-webkit-clip-path:inset(0 0% 0 0);clip-path:inset(0 0% 0 0)}}@keyframes shimmerSweep{0%{background-position:0% center}50%{background-position:100% center}to{background-position:0% center}}.about-bright{position:absolute;inset:0;background:linear-gradient(90deg,#a08350,#c3a772 15%,#d9c08a,#ece5d1,#d9c08a 75%,#c3a772 90%,#a08350);background-size:250% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:clipCharge 1.1s cubic-bezier(.16,1,.3,1) forwards,shimmerSweep 2.8s 1.1s ease-in-out infinite;pointer-events:none}@keyframes sparkRun{0%{left:-1%;opacity:0}4%{opacity:1}88%{opacity:1}to{left:101%;opacity:0}}.about-index{font-family:var(--font-mono);font-size:.625rem;font-weight:500;letter-spacing:.22em;color:var(--text-dim);opacity:.7;font-variant-numeric:tabular-nums;animation:aboutIndexIn .5s var(--ease-out) both}@keyframes aboutIndexIn{0%{opacity:0}to{opacity:.7}}.about-spark{position:absolute;top:0;bottom:0;left:0;width:2px;border-radius:1px;background:linear-gradient(to bottom,transparent 0%,rgba(240,234,220,.9) 25%,#ffffff 50%,rgba(240,234,220,.9) 75%,transparent 100%);box-shadow:0 0 4px 2px #d9c08a,0 0 12px 5px #d9c08aa6,0 0 28px 10px #d9c08a40;animation:sparkRun 1.1s cubic-bezier(.16,1,.3,1) forwards;pointer-events:none}.tech-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:1.25rem}.tech-tag{font-family:var(--font-mono);font-size:.65rem;font-weight:500;color:var(--text-dim);background:transparent;padding:.3rem .7rem;border-radius:4px;border:1px solid rgba(255,255,255,.07);text-transform:uppercase;letter-spacing:.06em;transition:color .3s var(--ease-out),border-color .3s var(--ease-out)}.tech-tag:hover{color:var(--accent);border-color:#d9c08a40}.project-metrics{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem}.metric-badge{font-family:var(--font-mono);font-size:.6875rem;font-weight:600;color:var(--text-primary);background:#11111599;padding:.375rem .875rem;border-radius:4px;border:1px solid rgba(217,192,138,.12);text-transform:uppercase;letter-spacing:.08em;box-shadow:0 0 8px #d9c08a0a;transition:all .3s ease}.metric-badge:hover{border-color:#d9c08a40;box-shadow:0 0 12px #d9c08a14;transform:translateY(-1px)}.timeline{display:flex;flex-direction:column;gap:4rem;position:relative}.timeline-item{display:grid;grid-template-columns:150px 1fr;gap:1.25rem;position:relative;opacity:0;transform:translateY(30px);transition:opacity .6s cubic-bezier(.4,0,.2,1),transform .6s cubic-bezier(.4,0,.2,1)}.timeline-item.visible{opacity:1;transform:translateY(0)}.timeline-item:hover{opacity:1!important}.timeline-item:nth-child(1){transition-delay:0s}.timeline-item:nth-child(2){transition-delay:.15s}.timeline-item:nth-child(3){transition-delay:.3s}.timeline-item:nth-child(4){transition-delay:.45s}.timeline:before{content:"";position:absolute;left:158px;top:0;bottom:0;width:2px;background:linear-gradient(180deg,transparent 0%,rgba(217,192,138,.3) 10%,rgba(44,44,51,.2) 90%,transparent 100%);opacity:0;transition:opacity .9s var(--ease-out) .15s}.section.section-active .timeline:before{opacity:1}.timeline-item:before{content:"";position:absolute;left:154px;top:14px;width:10px;height:10px;border-radius:50%;background:var(--bg-secondary);border:1px solid var(--border-faint);transition:all .4s cubic-bezier(.4,0,.2,1);z-index:3}.timeline-item.visible:before{background:#d9c08acc;border-color:#d9c08a99;box-shadow:0 0 12px #d9c08a66}.timeline-item:hover:before{transform:scale(1.3);background:var(--accent);box-shadow:0 0 20px #d9c08a99}.timeline-item.current:after{content:"";position:absolute;left:154px;top:14px;width:10px;height:10px;border-radius:50%;border:1px solid rgba(217,192,138,.7);animation:current-role-pulse 2.6s var(--ease-out) infinite;pointer-events:none;z-index:2}@keyframes current-role-pulse{0%{transform:scale(1);opacity:.8}70%,to{transform:scale(2.4);opacity:0}}.timeline-item.current .timeline-period{color:var(--accent);opacity:.9}.timeline-header{padding-top:.25rem}.timeline-period{font-family:var(--font-mono);font-size:.7rem;font-weight:500;color:var(--text-dim);text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}.timeline-content{padding:1.5rem;border-radius:4px;position:relative;border:1px solid transparent;transition:all .4s cubic-bezier(.4,0,.2,1)}.timeline-item:hover .timeline-content{background:#11111580;box-shadow:0 20px 25px -5px #0000004d,0 8px 10px -6px #0000004d,0 0 0 1px #d9c08a0d;transform:translateY(-2px);border-color:var(--border-faint)}.timeline-content:before{content:"";position:absolute;left:0;top:0;width:3px;height:0;background:linear-gradient(180deg,var(--accent) 0%,#5c4723 100%);transition:height .5s cubic-bezier(.4,0,.2,1);box-shadow:0 0 12px #d9c08a99;border-radius:2px}.timeline-item:hover .timeline-content:before{height:100%}.timeline-title{font-family:var(--font-display);font-size:clamp(1.05rem,.6vw + .95rem,1.2rem);font-weight:540;font-optical-sizing:auto;color:var(--text-primary);margin-bottom:.5rem;line-height:1.4;display:flex;align-items:center;gap:.5rem;transition:color .3s ease}.timeline-item:hover .timeline-title{color:var(--text-primary)}.title-arrow{color:var(--text-secondary);transition:all .4s var(--ease-spring);filter:drop-shadow(0 0 0 transparent)}.timeline-item:hover .title-arrow{color:var(--accent);transform:translate(4px,-4px);filter:drop-shadow(0 2px 8px rgba(217,192,138,.4))}.timeline-company{margin-bottom:.75rem}.company-name{font-size:1rem;font-weight:700;background:linear-gradient(135deg,#d9c08a,#e7d2a6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.company-label{color:var(--text-dim);font-size:.9375rem}.timeline-description{font-size:1.0625rem;color:var(--text-lede);margin-bottom:1rem;line-height:1.65}.timeline-highlights{list-style:none;margin-bottom:1.25rem;padding-left:0}.timeline-highlights li{font-size:.9375rem;color:var(--text-secondary);margin-bottom:.75rem;padding-left:1.5rem;position:relative;line-height:1.7}.timeline-highlights li:before{content:"▹";position:absolute;left:0;color:var(--accent);font-size:1.125rem;line-height:1.7}.metric{background:linear-gradient(135deg,#ebe7de,#d9c08a);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:800;font-family:var(--font-display)}.projects-list{display:flex;flex-direction:column;gap:3.5rem}.project-item{padding:1.75rem;border-radius:4px;border:1px solid rgba(255,255,255,.04);position:relative;transition:all .4s cubic-bezier(.4,0,.2,1)}@property --featured-angle{syntax: "<angle>"; initial-value: 0deg; inherits: false;}.project-item.featured{background:#11111566;border-color:transparent;box-shadow:0 2px 12px #0c0c0f33;--featured-angle: 0deg;animation:featuredPulse 2.8s var(--ease-out) .4s 1}@keyframes featuredPulse{0%{box-shadow:0 0 0 1px #d9c08a00,0 0 #d9c08a00}35%{box-shadow:0 0 0 1px #d9c08a59,0 0 48px -12px #d9c08a73}to{box-shadow:0 0 0 1px #d9c08a00,0 0 #d9c08a00}}.project-item.featured:after{content:"";position:absolute;inset:0;border-radius:4px;padding:1px;background:conic-gradient(from var(--featured-angle),rgba(217,192,138,.5),transparent 25%,rgba(170,136,88,.3) 50%,transparent 75%,rgba(217,192,138,.5));-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:featured-border-rotate 6s linear infinite;pointer-events:none;z-index:0}@keyframes featured-border-rotate{to{--featured-angle: 360deg}}.section:not(.section-active) .project-item.featured:after{animation-play-state:paused}.project-item:hover{background:#11111599;box-shadow:0 25px 50px -12px #00000080,0 0 0 1px #d9c08a14;border-color:#d9c08a4d;opacity:1!important;transform:translateY(-2px)}.project-date{position:absolute;top:1.9rem;right:1.75rem;font-family:var(--font-mono);font-size:.625rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--text-dim);opacity:.8;font-variant-numeric:tabular-nums;z-index:1}@media(max-width:640px){.project-date{position:static;display:block;margin-bottom:.4rem}.project-title{padding-right:0}}.project-title{padding-right:5.5rem;font-family:var(--font-display);font-size:clamp(1.05rem,.6vw + .95rem,1.2rem);font-weight:540;font-optical-sizing:auto;color:var(--text-primary);margin-bottom:.75rem;line-height:1.4;display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;transition:color .3s ease}.featured-badge{font-family:var(--font-mono);font-size:.7rem;font-weight:700;color:var(--accent);background:linear-gradient(135deg,#d9c08a38,#aa885838);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);padding:.25rem .75rem;border-radius:4px;border:1px solid rgba(217,192,138,.35);text-transform:uppercase;letter-spacing:.08em;text-shadow:0 0 8px rgba(217,192,138,.2)}.project-link{color:var(--text-primary);text-decoration:none;display:inline-flex;align-items:center;gap:.5rem;transition:color .3s ease}.project-link:after{content:"";position:absolute;inset:0;z-index:10}.project-link:hover{color:var(--accent)}.project-icon{transition:all .4s var(--ease-spring);color:var(--text-secondary);filter:drop-shadow(0 0 0 transparent)}.project-link:hover .project-icon,.project-item:hover .project-icon{color:var(--accent);transform:translate(4px,-4px);filter:drop-shadow(0 2px 8px rgba(217,192,138,.4))}.project-description{font-size:1rem;color:var(--text-secondary);margin-bottom:1rem;line-height:1.7}.project-item.live .metric-badge:first-child{display:inline-flex;align-items:center;gap:.45rem;border-color:#4ade8040}.project-item.live .metric-badge:first-child:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--signal-live);box-shadow:0 0 6px #4ade8099;animation:live-dot-pulse 2.5s ease-in-out infinite;flex-shrink:0}@keyframes live-dot-pulse{0%,to{box-shadow:0 0 6px #4ade8080}50%{box-shadow:0 0 12px #4ade80e6}}.publication-item{padding:1.75rem;border-radius:4px;border:1px solid var(--border-faint);background:#11111559;transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 12px #0c0c0f33;position:relative}.publication-item:before{content:"";position:absolute;inset:0;border-radius:4px;padding:1px;background:linear-gradient(135deg,rgba(170,136,88,.25),transparent);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:.6;pointer-events:none}.publication-item:hover{background:#11111599;box-shadow:0 12px 32px #0c0c0f66,0 0 0 1px #aa885826;border-color:#aa88584d;transform:translateY(-2px)}.publication-title{font-family:var(--font-display);font-size:1.125rem;font-weight:540;font-optical-sizing:auto;margin-bottom:.75rem;line-height:1.4}.publication-link{color:var(--text-primary);text-decoration:none;display:inline-flex;align-items:center;gap:.5rem;transition:color .3s ease}.publication-link:after{content:"";position:absolute;inset:0;z-index:10}.publication-link:hover{color:var(--accent-tertiary)}.publication-icon{transition:transform .3s ease;color:var(--accent-tertiary)}.publication-link:hover .publication-icon{transform:translate(3px,-3px)}.publication-venue{margin-bottom:1rem}.venue-badge{display:inline-block;font-family:var(--font-mono);font-size:.6875rem;font-weight:700;color:var(--accent-tertiary);background:#aa885814;padding:.375rem 1rem;border-radius:4px;border:1px solid rgba(170,136,88,.2);text-transform:uppercase;letter-spacing:.08em;box-shadow:0 0 10px #aa88580f}.publication-description{font-size:1rem;color:var(--text-secondary);margin-bottom:1rem;line-height:1.7}.publication-doi{font-size:.8125rem;color:var(--text-dim);font-family:var(--font-mono);text-decoration:none;border-bottom:1px dashed transparent;transition:color .3s ease,border-color .3s ease;position:relative;z-index:11}a.publication-doi:hover{color:var(--accent-tertiary);border-bottom-color:#aa885880}.publication-item:hover .publication-doi{color:var(--text-secondary)}.footer{margin-top:6rem;padding:2.5rem 0 2rem;font-size:.875rem;color:var(--text-dim);text-align:left;border-top:1px solid rgba(255,255,255,.04);position:relative}.footer:before{content:"";position:absolute;top:-1px;left:0;width:60px;height:1px;background:linear-gradient(90deg,rgba(217,192,138,.3),transparent)}.footer a{color:var(--text-primary);text-decoration:none;transition:color .3s ease}.footer a:hover{color:var(--accent)}.footer-separator{margin:0 .75rem;color:var(--text-dim);opacity:.5}.experience-recursion-btn{background:none;border:none;color:var(--text-dim);font-size:.8125rem;font-weight:500;cursor:pointer;padding:0;transition:all .3s ease;text-decoration:none;border-bottom:1px dashed rgba(217,192,138,.25);display:inline-flex;align-items:center;gap:.5rem}.experience-recursion-btn:hover{color:var(--text-primary);border-bottom-color:var(--accent);text-shadow:0 0 10px rgba(217,192,138,.3)}.footer-colophon{margin-top:.7rem;display:flex;align-items:center;gap:.6rem;font-family:var(--font-mono);font-size:.625rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim);opacity:.85;font-variant-numeric:tabular-nums}.colophon-mark{color:var(--accent);opacity:.6;font-size:.75rem;letter-spacing:0}.colophon-sep{opacity:.45}@media(max-width:1024px){body{overflow-y:auto;overflow-x:hidden}.app{height:auto;min-height:100vh;overflow:visible}.layout{flex-direction:column;height:auto;min-height:100vh}.sidebar{flex:none;width:100%;height:auto;padding:3rem 2rem 2rem;overflow-x:clip}.sidebar-content{height:auto;justify-content:flex-start;gap:1.5rem;overflow:visible}.sidebar-header{margin-bottom:0;overflow:visible}.header-main-content{overflow:visible;padding:1.5rem;gap:1rem}.section,.section .timeline-item,.section .project-item,.section .publication-item{opacity:1!important;transform:none!important}.timeline:before,.timeline-item:before,.timeline-item.current:after{display:none}.section-label{display:none}.name{line-height:1.2;word-break:break-word}.key-stats{gap:.875rem;margin-top:1.5rem}.stat-item{padding:1rem}.nav{display:none}.skills-marquee{margin:1rem 0;padding:.5rem 0}.skills-marquee:before,.skills-marquee:after{width:40px}.skill-icon{width:22px;height:22px}.marquee-content{gap:1.5rem;padding:0 .75rem}.profile-image-container{width:70px;height:70px}.sidebar-footer{margin-top:2rem}.resume-download{padding:1rem 1.5rem;font-size:.8125rem}.content-scroll{flex:1;width:100%;min-width:0;padding:2rem;height:auto;overflow-y:visible}.content-wrapper{max-width:100%}.section-title-mobile{display:block;font-size:.6875rem;font-weight:600;background:linear-gradient(135deg,#d9c08a,#e7d2a6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-transform:uppercase;letter-spacing:.2em;margin-bottom:2rem;position:-webkit-sticky;position:sticky;top:0;background-color:#0c0c0fd9;-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);padding:.875rem 0 .75rem;z-index:10;border-bottom:1px solid rgba(255,255,255,.06);box-shadow:0 4px 12px #0000001a}.section-title-mobile:before{content:"";position:absolute;left:0;bottom:0;width:3rem;height:1px;background:linear-gradient(90deg,rgba(217,192,138,.4),transparent)}.section{margin-bottom:5rem}.timeline-item{grid-template-columns:1fr;gap:.75rem}.timeline-header{padding-top:0}.timeline-period{font-size:.75rem;margin-bottom:.5rem}.timeline-content{padding:1.25rem}.timeline-description{font-size:.9375rem}.timeline-highlights li{font-size:.875rem}.project-item{padding:1.5rem}.project-description{font-size:.9375rem}.publication-item{padding:1.5rem}.publication-title{font-size:1rem}.publication-description{font-size:.9375rem}.scroll-progress-bar{position:fixed}}@media(max-width:640px){.sidebar{padding:2rem 1.25rem 1.5rem}.sidebar-footer{margin-top:1.5rem!important}.key-stats{gap:.5rem;margin-top:1.25rem}.stat-item{padding:.875rem .75rem;flex-direction:column;align-items:center;text-align:center}.stat-value{font-size:1.375rem;margin-bottom:.1rem}.resume-download{width:100%;justify-content:center;padding:1rem 1.25rem}.social-links{justify-content:center;gap:1.25rem}.social-link{padding:.625rem}.sidebar-meta{justify-content:center}.skills-marquee:before,.skills-marquee:after{width:30px}.skill-icon{width:20px;height:20px}.marquee-content{gap:1.25rem;padding:0 .5rem}.header-main-content{flex-direction:column;align-items:center;text-align:center;padding:1.25rem;gap:.75rem}.header-info{width:100%;text-align:center}.profile-image-container{width:60px;height:60px}.content-scroll{padding:1.5rem 1.25rem}.section{margin-bottom:4rem}.timeline-content{padding:1rem}.timeline-company{margin-bottom:.625rem}.company-name{font-size:.9375rem}.company-label,.timeline-description{font-size:.875rem}.timeline-highlights li{font-size:.8125rem;padding-left:1.25rem}.project-item{padding:1.25rem}.project-description{font-size:.875rem}.project-metrics{gap:.5rem}.metric-badge{padding:.3125rem .625rem}.featured-badge{padding:.1875rem .625rem}.publication-item{padding:1.25rem}.publication-title{font-size:.9375rem}.publication-description{font-size:.875rem}.venue-badge{padding:.3125rem .875rem}.publication-doi{font-size:.75rem}.footer{margin-top:4rem;padding:1.5rem 0;font-size:.8125rem}}@media(max-width:380px){.sidebar{padding:1.5rem 1rem 1.25rem}.content-scroll{padding:1.25rem 1rem}.stat-value{font-size:1.5rem}.skills-marquee{margin:.75rem 0;padding:.375rem 0}.skills-marquee:before,.skills-marquee:after{width:20px}.skill-icon{width:18px;height:18px}.marquee-content{gap:1rem}.profile-image-container{width:50px;height:50px}}.chat-toggle{position:fixed;bottom:24px;right:24px;height:54px;padding:0 1.25rem 0 1.05rem;display:flex;align-items:center;gap:.6rem;border-radius:999px;background:linear-gradient(135deg,#111115eb,#0c0c0ff5);-webkit-backdrop-filter:blur(16px) saturate(180%);backdrop-filter:blur(16px) saturate(180%);border:1px solid rgba(217,192,138,.28);color:var(--text-primary);cursor:pointer;box-shadow:0 8px 28px #00000073,0 0 18px #aa88581a;transition:all .4s cubic-bezier(.4,0,.2,1);z-index:var(--z-chat)}.chat-toggle-dot{width:7px;height:7px;border-radius:50%;background:var(--signal-live);box-shadow:0 0 6px #4ade8099;animation:chat-dot-pulse 2.5s ease-in-out infinite;flex-shrink:0}@keyframes chat-dot-pulse{0%,to{box-shadow:0 0 6px #4ade8080}50%{box-shadow:0 0 14px #4ade80e6}}.chat-toggle-label{font-family:var(--font-body);font-size:.8125rem;font-weight:600;letter-spacing:.01em;white-space:nowrap}.chat-toggle:after{content:"";position:absolute;inset:-1px;border-radius:999px;border:1px solid rgba(170,136,88,.6);opacity:0;pointer-events:none;animation:pulse-neon 2.5s var(--ease-out) infinite;will-change:transform,opacity}@keyframes pulse-neon{0%{transform:scale(1);opacity:.7}70%,to{transform:scale(1.25);opacity:0}}.chat-toggle:hover:after,.chat-toggle:focus-visible:after,.chat-toggle.chat-engaged:after,.chat-toggle.chat-open:after{animation:none}.chat-toggle:hover{transform:translateY(-2px);box-shadow:0 12px 32px #00000080,0 0 20px #aa885833;border-color:#d9c08a73}.chat-toggle.chat-open{width:54px;padding:0;justify-content:center;background:#d9c08a26}.chat-toggle.chat-open .chat-toggle-label,.chat-toggle.chat-open .chat-toggle-dot{display:none}@media(max-width:640px){.chat-toggle{bottom:16px;right:16px;width:52px;height:52px;padding:0;justify-content:center}.chat-toggle-label,.chat-toggle-dot{display:none}}.mobile-tabbar{display:none}@media(max-width:1024px){.mobile-tabbar{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;position:fixed;left:0;right:0;bottom:0;z-index:var(--z-tabbar);padding:8px 8px calc(8px + env(safe-area-inset-bottom,0px));background:#0c0c0feb;backdrop-filter:blur(22px) saturate(180%);-webkit-backdrop-filter:blur(22px) saturate(180%);border-top:1px solid rgba(217,192,138,.16);box-shadow:0 -10px 30px #00000080}.tabbar-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:48px;padding:6px 2px;background:transparent;border:none;border-radius:12px;color:var(--text-secondary);font-family:var(--font-body);font-size:.5625rem;font-weight:600;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:color .25s var(--ease-out),background .25s var(--ease-out),transform .15s var(--ease-out)}.tabbar-item .tabbar-label{text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.tabbar-item.active{color:var(--accent);background:#d9c08a14}.tabbar-item.active svg{filter:drop-shadow(0 0 8px rgba(217,192,138,.35))}.tabbar-item:active{transform:scale(.94)}.chat-toggle{bottom:calc(78px + env(safe-area-inset-bottom,0px))}.footer{margin-bottom:72px}}@media(prefers-reduced-motion:reduce){.tabbar-item{transition:none}}@media print{body{background:#fff!important;color:#333;overflow:visible}.app{height:auto;overflow:visible;background:none}.app:before,.cinematic-noise,.cursor-glow,.scroll-progress-bar,.chat-toggle,.chat-panel,.mobile-tabbar,.skills-marquee,.nav,.resume-download,.social-links,.section-number,.section-label,.section-title-mobile,.card-seal,.about-bright,.about-spark,.about-index,.experience-recursion-btn,.footer-separator,.skip-link{display:none!important}.layout{flex-direction:column;height:auto;max-width:100%}.sidebar,.content-scroll{height:auto;overflow:visible;padding:0 0 1.5rem;animation:none}.sidebar-header{background:none;border:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;margin-bottom:1rem}.sidebar-header:before{display:none}.name{color:#000}.title{color:#333}.tagline,.sidebar-meta{color:#555}.key-stats{background:none;border-top:1px solid #ddd}.stat-value{color:#000}.stat-label{color:#555}.section{opacity:1!important;margin-bottom:2rem;contain:none}.timeline-item,.project-item,.publication-item{opacity:1!important;transform:none!important;break-inside:avoid}.timeline:before,.timeline-item:before,.timeline-item.current:after,.project-item.featured:after,.publication-item:before{display:none}.about-static,.timeline-description,.project-description,.publication-description,.timeline-highlights li{color:#333}.about-intro{border-left-color:#ccc}.about-intro:before{display:none}.about-dim,.metric,.company-name,.highlight{background:none!important;-webkit-background-clip:initial!important;background-clip:initial!important;-webkit-text-fill-color:#000!important;color:#000!important}.metric,.company-name{font-weight:700}.timeline-title,.project-title,.publication-title,.project-link,.publication-link{color:#000}.timeline-content,.project-item,.publication-item{border:1px solid #ddd;background:none;box-shadow:none}.timeline-period,.project-date,.company-label,.publication-doi{color:#555}.tech-tag,.metric-badge,.featured-badge,.venue-badge{color:#444;background:none;border-color:#ccc;box-shadow:none;text-shadow:none}.footer{border-top:1px solid #ddd;color:#555}.footer:before{display:none}.footer-colophon,.colophon-mark{color:#777}}
