@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-outline-style:solid}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-neutral-100:#f5f5f5;--color-neutral-200:#e5e5e5;--color-neutral-400:#a1a1a1;--color-neutral-500:#737373;--color-neutral-800:#262626;--color-neutral-900:#171717;--color-white:#fff;--spacing:.25rem;--font-weight-medium:500;--font-weight-semibold:600;--tracking-wider:.05em;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--ease-out:cubic-bezier(0, 0, .2, 1);--blur-md:12px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}@supports (color:lab(0% 0 0)){:root,:host{--color-neutral-100:lab(96.52% -.0000298023 .0000119209);--color-neutral-200:lab(90.952% 0 -.0000119209);--color-neutral-400:lab(66.128% -.0000298023 .0000119209);--color-neutral-500:lab(48.496% 0 0);--color-neutral-800:lab(15.204% 0 -.00000596046);--color-neutral-900:lab(7.78201% -.0000149012 0)}}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.\!visible{visibility:visible!important}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:0}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-6{height:calc(var(--spacing) * 6)}.h-screen{height:100vh}.w-1\.5{width:calc(var(--spacing) * 1.5)}.w-full{width:100%}.min-w-\[28px\]{min-width:28px}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-pointer{cursor:pointer}.resize{resize:both}.items-center{align-items:center}.justify-center{justify-content:center}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:var(--spacing)}.rounded-full{border-radius:3.40282e38px}.border{border-style:var(--tw-border-style);border-width:1px}.border-neutral-200{border-color:var(--color-neutral-200)}.bg-neutral-400{background-color:var(--color-neutral-400)}.bg-neutral-900{background-color:var(--color-neutral-900)}.bg-white\/95{background-color:#fffffff2}@supports (color:color-mix(in lab, red, red)){.bg-white\/95{background-color:color-mix(in oklab, var(--color-white) 95%, transparent)}}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.py-1{padding-block:var(--spacing)}.font-mono{font-family:var(--font-mono)}.text-\[11px\]{font-size:11px}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.text-neutral-400{color:var(--color-neutral-400)}.text-neutral-500{color:var(--color-neutral-500)}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.underline{text-decoration-line:underline}.shadow-xs{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-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,)}.backdrop-blur-md{--tw-backdrop-blur:blur(var(--blur-md));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-150{--tw-duration:.15s;transition-duration:.15s}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.select-none{-webkit-user-select:none;user-select:none}@media (hover:hover){.hover\:bg-neutral-100:hover{background-color:var(--color-neutral-100)}.hover\:text-neutral-900:hover{color:var(--color-neutral-900)}}.focus-visible\:outline-2:focus-visible{outline-style:var(--tw-outline-style);outline-width:2px}.focus-visible\:outline-offset-1:focus-visible{outline-offset:1px}.focus-visible\:outline-neutral-900:focus-visible{outline-color:var(--color-neutral-900)}@media (min-width:40rem){.sm\:inline-flex{display:inline-flex}}.dark\:border-neutral-800:where(.dark,.dark *){border-color:var(--color-neutral-800)}.dark\:bg-neutral-500:where(.dark,.dark *){background-color:var(--color-neutral-500)}.dark\:bg-neutral-900\/95:where(.dark,.dark *){background-color:#171717f2}@supports (color:color-mix(in lab, red, red)){.dark\:bg-neutral-900\/95:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-neutral-900) 95%, transparent)}}.dark\:bg-white:where(.dark,.dark *){background-color:var(--color-white)}.dark\:text-neutral-400:where(.dark,.dark *){color:var(--color-neutral-400)}.dark\:text-neutral-500:where(.dark,.dark *){color:var(--color-neutral-500)}.dark\:text-neutral-900:where(.dark,.dark *){color:var(--color-neutral-900)}@media (hover:hover){.dark\:hover\:bg-neutral-800:where(.dark,.dark *):hover{background-color:var(--color-neutral-800)}.dark\:hover\:text-white:where(.dark,.dark *):hover{color:var(--color-white)}}.dark\:focus-visible\:outline-white:where(.dark,.dark *):focus-visible{outline-color:var(--color-white)}}a:focus-visible,button:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}.skip-link{z-index:1000;border:1px solid var(--text-primary);background:var(--bg-primary);color:var(--text-primary);font:500 13px/1 var(--font-geist-sans), sans-serif;padding:10px 14px;text-decoration:none;position:fixed;top:12px;left:12px;translate:0 calc(-100% - 24px)}.skip-link:focus-visible{translate:0}main[tabindex="-1"]:focus-visible{outline:none}::selection{background-color:var(--text-primary);color:var(--bg-primary)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:9999px}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.telemetry-val,.trace-item-val,.bento-spec-val,.code-editor-line-num{font-feature-settings:"tnum" 1, "cv02" 1, "cv03" 1, "cv04" 1;font-variant-numeric:tabular-nums}:root{--bg-primary:#f7f6f2;--bg-secondary:#efeee9;--bg-card:#f7f6f2;--text-primary:#14151a;--text-secondary:#625f58;--border-color:#dedbd4;--bg-chat-panel:#f7f6f2;--accent-color:#000;--accent-bg-muted:#eae9e4;--accent-text:#000;--accent-hover:#3f3f46;--btn-primary-bg:#1f1f1f;--btn-primary-text:#fff;--btn-secondary-bg:#f7f6f2;--btn-secondary-text:#1f1f1f;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-full:9999px;--font-sans:var(--font-geist-sans), -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono:var(--font-geist-mono), monospace;--font-pixel:var(--font-geist-pixel-square), var(--font-geist-mono), monospace;--transition-speed:.2s;--shadow-hover:none;--shadow-tooltip:0 2px 4px #00000014;--shadow-modal:0 16px 32px #0003;--shadow-nav:none}[data-theme=dark]{--bg-primary:#0a0a0c;--bg-secondary:#131316;--bg-card:#17171b;--bg-chat-panel:#101110;--text-primary:#f2f3f5;--text-secondary:#96979f;--border-color:#26272b;--accent-color:#fff;--accent-bg-muted:#26272b;--accent-text:#fff;--accent-hover:#c6c6c6;--btn-primary-bg:#e8eaed;--btn-primary-text:#121214;--btn-secondary-bg:#1e1e20;--btn-secondary-text:#e8eaed}*{box-sizing:border-box;margin:0;padding:0}html,body{max-width:100vw;overflow-x:clip}body{font-family:var(--font-sans);background-color:var(--bg-primary);color:var(--text-primary);transition:background-color var(--transition-speed) ease-out, color var(--transition-speed) ease-out;line-height:1.6;position:relative}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}h1,h2,h3,h4{letter-spacing:-.03em;text-wrap:balance;font-weight:700;line-height:1.2}h1{letter-spacing:-.05em;color:var(--text-primary);font-size:clamp(3rem,6vw + 1rem,5rem);font-weight:800;line-height:1.05}h2{letter-spacing:-.05em;color:var(--text-primary);margin-bottom:1.25rem;font-size:clamp(2.75rem,5.2vw,4.5rem);font-weight:800;line-height:1.05}h3{color:var(--text-primary);font-size:1.25rem}p{color:var(--text-secondary);max-width:65ch;font-size:.98rem;line-height:1.6}a{color:var(--accent-text);transition:color var(--transition-speed) ease;text-decoration:none}a:hover{color:var(--accent-hover);text-decoration:underline}.container{width:100%;max-width:1100px;margin:0 auto;padding:0 1.5rem}.section{z-index:1;background-color:var(--bg-primary);content-visibility:auto;contain-intrinsic-size:auto 650px;padding:5rem 0;position:relative}.hero-wrapper.portfolio-hero-wrapper{z-index:0;background-image:none;flex-direction:column;justify-content:center;min-height:calc(100svh - 4.5rem);display:flex;position:sticky;top:0}@media (prefers-reduced-motion:reduce){.portfolio-hero-wrapper{position:relative}}.badge{font-family:var(--font-mono);background-color:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border-color);border-radius:9999px;align-items:center;padding:.25rem .75rem;font-size:.72rem;font-weight:500;display:inline-flex}.badge-accent{background-color:var(--accent-bg-muted);color:var(--accent-text);border-color:#0000}.navbar{z-index:100;background-color:var(--bg-secondary);position:sticky;top:0}@supports (color:color-mix(in lab, red, red)){.navbar{background-color:color-mix(in srgb, var(--bg-secondary) 96%, transparent)}}.navbar{-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border-color);transition:background-color var(--transition-speed) ease, border-color var(--transition-speed) ease, transform .6s cubic-bezier(.75, 0, .25, 1)}.navbar[data-scroll-hidden=true]{transform:translateY(-100%)}.portfolio-shell--minimalist .navbar-portfolio .nav-container{animation:.8s cubic-bezier(.22,1,.36,1) .95s backwards nav-enter}@keyframes nav-enter{0%{opacity:0;transform:translateY(-10px)}}@media (prefers-reduced-motion:reduce){.portfolio-shell--minimalist .navbar-portfolio .nav-container{animation:none}.navbar{transition:none}}.nav-container{grid-template-columns:auto 1fr auto;align-items:center;width:100%;max-width:1600px;height:4.5rem;margin:0 auto;padding:0 2rem;display:grid;position:relative}.nav-brand{color:var(--text-primary);align-items:center;gap:.75rem;font-size:1.25rem;display:flex;text-decoration:none!important}.brand-wordmark{font-family:var(--font-sans);letter-spacing:-.045em;color:var(--text-primary);text-transform:lowercase;font-size:1.3rem;font-weight:500;line-height:1}.nav-links{align-items:center;gap:1.75rem;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.nav-mobile-actions{display:none}.nav-link{color:var(--text-secondary);transition:color var(--transition-speed) ease;font-size:.92rem;font-weight:500;text-decoration:none!important}.nav-link:hover{color:var(--text-primary)}.navbar.navbar-minimal{background:var(--bg-primary);-webkit-backdrop-filter:none;isolation:isolate;border-bottom:0}.navbar-minimal .nav-container{justify-content:space-between;max-width:1440px;height:4rem;padding:0 clamp(20px,5vw,72px);display:flex}.nav-minimal-actions{align-items:center;gap:.2rem;display:flex}.nav-minimal-actions :is(.nav-ask-link,.nav-menu-trigger,.nav-utility){font-size:1rem;font-family:var(--font-sans);letter-spacing:-.02em;padding-inline:.65rem;transition:color .15s,background-color .15s}@media (max-width:767px){.nav-minimal-actions :is(.nav-ask-link,.nav-menu-trigger,.nav-utility){font-size:.9rem}}.nav-ask-link,.nav-menu-trigger,.nav-utility{min-height:44px;color:var(--text-primary);font-family:var(--font-mono);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:.5rem;padding:0;font-size:.78rem;line-height:1;text-decoration:none;transition:color .15s;display:inline-flex}.nav-ask-link:hover,.nav-menu-trigger:hover,.nav-utility:hover{color:var(--text-primary);background-color:var(--accent-bg-muted)}.nav-hl-group{isolation:isolate;position:relative}.nav-hl{z-index:-1;background:var(--text-primary);transform:translate(var(--hl-x,0), var(--hl-y,0)) scaleY(var(--hl-scale,0));transform-origin:50% 100%;pointer-events:none;transition:transform .48s cubic-bezier(.22,1,.36,1),width .48s cubic-bezier(.22,1,.36,1),height .48s cubic-bezier(.22,1,.36,1);position:absolute;top:0;left:0}[data-hl-item]{transition:color .24s;position:relative}.nav-minimal-actions [data-hl-item]:is(:hover,:focus-visible){background-color:#0000}.nav-hl-group [data-hl-item][data-hl-active]{color:var(--bg-primary);text-decoration:none}.nav-ask-link svg{transition:transform .18s cubic-bezier(.16,1,.3,1)}.nav-ask-link:hover svg{transform:translate(2px)}.portfolio-shell--minimalist{--accent-ease:cubic-bezier(.22, 1, .36, 1)}.portfolio-shell--minimalist :is(.navbar-minimal a[href="/resume.pdf"] svg,.nav-ask-link svg,.chat-suggestion-arrow,.chat-send-btn svg,.nav-brand-bracket,.nav-theme-icon){transition:transform .2s var(--accent-ease), color .15s ease}.portfolio-shell--minimalist .navbar-minimal a[href="/resume.pdf"]:hover svg{transform:translate(2px,-2px)}.portfolio-shell--minimalist .nav-ask-link:hover svg{transform:translate(3px)}.portfolio-shell--minimalist .nav-brand:hover .nav-brand-bracket--left{transform:translate(-1.5px)}.portfolio-shell--minimalist .nav-brand:hover .nav-brand-bracket--right{transform:translate(1.5px)}.portfolio-shell--minimalist .nav-theme-control:hover .nav-theme-icon{transform:rotate(30deg)}.portfolio-shell--minimalist :is(.chat-suggestion:hover,.chat-suggestion:focus-visible) .chat-suggestion-arrow{transform:translate(3px)}.portfolio-shell--minimalist .chat-send-btn:hover:not(:disabled) svg{transform:translateY(-3px)}.portfolio-shell--minimalist :is(.nav-utility,.nav-ask-link,.nav-menu-trigger,.chat-suggestion,.chat-send-btn:not(:disabled)){transition-property:color,background-color,opacity,scale;transition-duration:.15s,.15s,.15s,.2s}.portfolio-shell--minimalist :is(.nav-utility,.nav-ask-link,.nav-menu-trigger,.chat-suggestion,.chat-send-btn:not(:disabled)):active{scale:.97}@media (prefers-reduced-motion:reduce){.portfolio-shell--minimalist :is(.navbar-minimal a[href="/resume.pdf"] svg,.nav-ask-link svg,.chat-suggestion-arrow,.chat-send-btn svg,.nav-brand-bracket,.nav-theme-icon){transition:none}.portfolio-shell--minimalist :is(.nav-utility,.nav-ask-link,.nav-menu-trigger,.chat-suggestion,.chat-send-btn):active{scale:none}}.nav-menu-mark-vertical{transform-origin:50%;transition:transform .18s cubic-bezier(.16,1,.3,1)}.nav-menu-trigger.is-open .nav-menu-mark-vertical{transform:scaleY(0)}.nav-menu-panel{background:var(--bg-primary);opacity:0;visibility:hidden;pointer-events:none;scrollbar-width:none;border:0;border-radius:0;width:min(420px,100vw - 2rem);max-height:calc(100dvh - 5.5rem);padding:0;transition:opacity .42s cubic-bezier(.65,0,.35,1),transform .42s cubic-bezier(.65,0,.35,1),visibility 0s linear .42s;position:absolute;top:calc(100% + .75rem);right:clamp(16px,5vw,72px);overflow:clip auto;transform:translateY(-10px);box-shadow:0 12px 32px #00000014}.nav-menu-panel::-webkit-scrollbar{display:none}.nav-menu-panel.is-open{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .52s cubic-bezier(.22,1,.36,1),transform .52s cubic-bezier(.22,1,.36,1),visibility;transform:none}.nav-menu-section{isolation:isolate;box-sizing:border-box;width:100%;min-height:56px;color:var(--text-primary);font-family:var(--font-sans);letter-spacing:-.025em;align-items:center;margin:0;padding:8px 14px;font-size:1.1rem;text-decoration:none;transition:color .18s;display:flex;position:relative}.navbar-minimal .nav-menu-section:focus-visible{border-radius:0;outline:none}.nav-menu-footer{border:0;width:100%;min-height:0;margin-top:0;padding:0;display:block}.nav-menu-footer .nav-theme-control{isolation:isolate;box-sizing:border-box;width:100%;min-height:56px;color:var(--text-primary);font-family:var(--font-sans);letter-spacing:-.025em;background:0 0;justify-content:flex-start;gap:.65rem;padding:8px 14px;font-size:1.1rem;transition:color .18s;position:relative}.nav-menu-footer .nav-theme-control:focus-visible{background:0 0;outline:none}.nav-theme-control{gap:.65rem}.nav-theme-icon{flex:none;width:16px;height:16px;margin-left:auto}.navbar-minimal :is(a,button):focus-visible{outline:2px solid var(--text-primary);outline-offset:4px;border-radius:2px}.navbar.navbar-technical{background:var(--bg-primary);border-bottom:1px solid var(--border-color)}.navbar-technical .nav-container{max-width:1100px;padding:0 1.5rem}.navbar-technical .brand-wordmark{font-family:var(--font-pixel);letter-spacing:-.01em;font-size:1.3rem;font-weight:700}.navbar-technical .nav-minimal-actions{gap:1rem}.navbar-technical .nav-minimal-actions :is(.nav-ask-link,.nav-menu-trigger,.nav-utility){font-family:var(--font-mono);letter-spacing:normal;padding-inline:0;transition:color .15s}.navbar-technical :is(.nav-ask-link,.nav-menu-trigger,.nav-utility):hover{color:var(--text-secondary);background-color:#0000}.navbar-technical .nav-ask-link:hover svg{transform:none}.navbar-technical .nav-action-divider{background:var(--border-color);width:1px;height:14px}.navbar-technical .nav-menu-panel{border:1px solid var(--border-color);border-radius:var(--radius-sm);width:310px;max-width:calc(100vw - 3rem);box-shadow:none;opacity:1;visibility:visible;pointer-events:auto;padding:.5rem 1.25rem 0;transition:none;animation:.18s cubic-bezier(.16,1,.3,1) nav-menu-enter;top:calc(100% + .5rem);right:1.5rem;overflow-x:visible;transform:none}.navbar-technical .nav-menu-panel[hidden]{display:none}.navbar-technical .nav-menu-section{isolation:auto;letter-spacing:normal;border-bottom:1px solid var(--border-color);justify-content:space-between;gap:1rem;min-height:50px;padding:0;font-size:1rem}.navbar-technical .nav-menu-section:last-child{border-bottom:0}.navbar-technical .nav-menu-section svg{color:var(--text-secondary);transition:transform .15s}.navbar-technical .nav-menu-section:hover svg{transform:translate(3px)}.navbar-technical .nav-menu-footer{border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;gap:1rem;min-height:58px;margin-top:.5rem;display:flex}.navbar-technical .nav-menu-footer .nav-theme-control{isolation:auto;width:auto;min-height:44px;font-family:var(--font-mono);letter-spacing:normal;color:var(--text-secondary);justify-content:center;gap:.5rem;padding:0;font-size:.7rem;transition:color .15s}.navbar-technical .nav-theme-control .nav-theme-text{text-align:left;width:5ch;display:inline-block}.navbar-technical .nav-theme-swatch{background:linear-gradient(90deg,currentColor 50%,#0000 50%);border:1px solid;border-radius:50%;width:11px;height:11px}@keyframes nav-menu-enter{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media (max-width:480px){.navbar-technical .nav-container{padding:0 1rem}.navbar-technical .nav-minimal-actions{gap:.65rem}.navbar-technical .nav-minimal-actions :is(.nav-ask-link,.nav-menu-trigger,.nav-utility){padding-inline:0}.navbar-technical .nav-menu-panel{max-width:calc(100vw - 2rem);right:1rem}}@media (max-width:360px){.navbar-technical .nav-minimal-actions{gap:.5rem}.navbar-technical .nav-minimal-actions :is(.nav-utility,.nav-ask-link,.nav-menu-trigger){gap:.35rem}}@media (prefers-reduced-motion:reduce){.navbar-technical .nav-menu-panel{animation:none}.navbar-technical .nav-menu-section svg{transition:none}.navbar-technical .nav-menu-section:hover svg{transform:none}}@media (max-width:480px){.navbar-minimal .nav-container{padding:0 1rem}.navbar-minimal .nav-brand{gap:.5rem}.navbar-minimal .brand-wordmark{font-size:1.15rem}.nav-minimal-actions{gap:.1rem}.nav-minimal-actions :is(.nav-ask-link,.nav-menu-trigger,.nav-utility){padding-inline:.35rem;font-size:.8rem}.nav-ask-link svg{display:none}.nav-menu-panel{width:calc(100vw - 2rem);right:1rem}}@media (max-width:360px){.navbar-minimal .brand-wordmark{font-size:1rem}.nav-minimal-actions{gap:.05rem}.nav-minimal-actions :is(.nav-utility,.nav-ask-link,.nav-menu-trigger){gap:.3rem;padding-inline:.25rem;font-size:.7rem}}@media (prefers-reduced-motion:reduce){.nav-menu-panel,.nav-menu-panel.is-open,.nav-hl,.nav-menu-mark-vertical,.nav-menu-section,.nav-menu-section:before{transition:none}}@media (prefers-reduced-motion:no-preference){::view-transition-old(root){z-index:1;animation:none}::view-transition-new(root){z-index:2;animation:.52s cubic-bezier(.16,1,.3,1) both theme-circle-reveal}}@keyframes theme-circle-reveal{0%{clip-path:circle(0 at var(--theme-reveal-x) var(--theme-reveal-y))}to{clip-path:circle(var(--theme-reveal-radius) at var(--theme-reveal-x) var(--theme-reveal-y))}}html[data-theme-transition=exposure] *,html[data-theme-transition=exposure] :before,html[data-theme-transition=exposure] :after{transition:none!important}@media (prefers-reduced-motion:no-preference){html[data-theme-transition=exposure]::view-transition-new(root){animation:.76s cubic-bezier(.22,1,.36,1) both theme-exposure-in}}@keyframes theme-exposure-in{0%{opacity:0;transform:scale(1.018)}to{opacity:1;transform:scale(1)}}.theme-toggle{cursor:pointer;width:44px;height:44px;color:var(--text-primary);transition:background-color var(--transition-speed) ease, color var(--transition-speed) ease;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex}.theme-toggle:hover{background-color:var(--bg-secondary)}.theme-toggle svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:1.25rem;height:1.25rem}.hidden{display:none!important}.mobile-menu-btn{cursor:pointer;width:44px;height:44px;color:var(--text-primary);background:0 0;border:none;display:none}.hero-wrapper{background-color:var(--bg-primary);background-image:radial-gradient(var(--border-color) 1px, transparent 1px);background-position:-12px -12px;background-size:24px 24px;justify-content:center;align-items:center;min-height:calc(100vh - 4.5rem);display:flex;position:relative;overflow:hidden}.hero-stage{z-index:1;text-align:center;flex-direction:column;align-items:center;max-width:1500px;padding-top:3rem;padding-bottom:3rem;display:flex;position:relative}.glyph-tide{width:100%;height:100%;font-family:var(--font-mono);color:var(--text-secondary);display:block}.hero-plasma{z-index:0;color:#38352f;opacity:.68;pointer-events:none;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 65%,#0000 100%);mask-image:linear-gradient(#000 65%,#0000 100%)}[data-theme=dark] .hero-plasma{color:#d4d0c7;opacity:.55}.hero-name{font-family:var(--font-sans);letter-spacing:-.015em;color:var(--text-primary);margin-bottom:1.85rem;font-size:clamp(1.5rem,2.8vw,2.5rem);font-weight:400;line-height:1.1}.hero-headline{font-family:var(--font-sans);letter-spacing:-.06em;color:var(--text-primary);margin-bottom:2rem;font-size:clamp(2.25rem,min(10.5vw,16svh),8.5rem);font-weight:650;line-height:1.02}.hero-line{display:block;overflow:visible}.hero-line-inner{align-items:center;gap:.22em;display:inline-flex}.hero-word{display:inline-block;overflow:visible}.hero-word-inner{display:inline-block}.hero-inline-photo{display:inline-block;overflow:hidden}.hero-portrait{border:1px solid var(--border-color);border-radius:2px;width:2.1em;height:.88em;margin:0 .06em;display:block;position:relative;overflow:hidden}.hero-portrait-img{object-fit:cover;object-position:34% 28%;transform-origin:34% 28%;transform:scale(1.6)}.hero-stage .hero-description{color:var(--text-secondary);max-width:52ch;margin:0 auto 3rem;font-size:clamp(1.05rem,1.35vw,1.25rem);line-height:1.6}.hero-stage .hero-actions{justify-content:center;align-items:center;margin-bottom:0;display:flex}.typesafe-cta{cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:manipulation;font-family:var(--font-sans);letter-spacing:-.04em;color:var(--text-primary);padding:.15rem 0;font-size:clamp(1.15rem,2.4vw,1.9rem);font-weight:700;line-height:1;text-decoration:none;transition:transform .22s cubic-bezier(.16,1,.3,1);display:inline-block}.typesafe-cta:hover{color:var(--text-primary);text-decoration:underline;transform:scale(1.05)}@media (prefers-reduced-motion:reduce){.typesafe-cta{transition:none}.typesafe-cta:hover{transform:none}}.typesafe-cta:active{opacity:.7}.hero-work-link{gap:.5rem}.hero-actions .btn-pill{justify-content:center;min-width:10.5rem}.hero-work-arrow{transition:transform .25s cubic-bezier(.16,1,.3,1);display:inline-block}.hero-work-link:hover .hero-work-arrow{transform:translateY(3px)}.hero-content{z-index:2;text-align:left;grid-template-columns:1fr 1fr;align-items:center;gap:3.5rem;padding-top:4.5rem;padding-bottom:5.5rem;display:grid;position:relative}.hero-text-col .hero-actions{justify-content:flex-start;margin-bottom:0}.hero-text-col{flex-direction:column;align-items:flex-start;display:flex}.hero-title-group{max-width:760px;margin-bottom:1.5rem}.hero-title{font-family:var(--font-sans,sans-serif);letter-spacing:-.04em;color:var(--text-primary);margin-bottom:1.15rem;font-size:clamp(2.75rem,min(8vw,12svh),7.5rem);font-weight:700;line-height:.95}.hero-description{font-family:var(--font-sans,sans-serif);letter-spacing:-.01em;color:var(--text-secondary);max-width:44ch;font-size:1.05rem;font-weight:400;line-height:1.6}.hero-photo-col{justify-content:flex-end;width:100%;display:flex}.hero-metrics-rail{flex-wrap:nowrap;align-items:center;gap:.5rem;width:auto;max-width:100%;margin-top:1.75rem;display:flex;overflow-x:auto}.metric-rail-item{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-sm);white-space:nowrap;flex-shrink:0;align-items:center;gap:.45rem;padding:.35rem .65rem;transition:border-color .15s,transform .15s;display:inline-flex}.metric-rail-item:hover{border-color:var(--text-secondary);transform:translateY(-1px)}.metric-rail-value{font-family:var(--font-sans,sans-serif);color:var(--text-primary);letter-spacing:-.02em;white-space:nowrap;font-size:.95rem;font-weight:700;line-height:1}.metric-rail-label{font-family:var(--font-mono,monospace);color:var(--text-secondary);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;font-size:.68rem;font-weight:500;line-height:1}.metric-rail-divider{display:none}.hero-actions{flex-wrap:wrap;justify-content:center;gap:1rem;margin-bottom:3.5rem;display:flex}.btn-pill{font-family:var(--font-sans);border-radius:var(--radius-sm);cursor:pointer;transition:transform .15s ease, background-color var(--transition-speed) ease, border-color var(--transition-speed) ease;box-shadow:none;border:1px solid #0000;align-items:center;gap:.5rem;padding:.65rem 1.6rem;font-size:.88rem;font-weight:600;display:inline-flex}.btn-pill:hover{box-shadow:none;transform:translateY(-1px)}.btn-pill:active{box-shadow:none;transform:scale(.98)}.btn-pill-sm{align-items:center;min-height:44px;padding:.5rem 1.25rem;font-size:.85rem;display:inline-flex}.btn-pill-primary{background-color:var(--btn-primary-bg);color:var(--btn-primary-text)}.btn-pill-primary:hover{background-color:var(--accent-color);color:#fff;text-decoration:none}.btn-pill-accent-blue{background-color:var(--accent-color);color:#fff}.btn-pill-accent-blue:hover{background-color:var(--accent-hover);color:#fff;box-shadow:none;text-decoration:none}[data-theme=dark] .btn-pill-accent-blue,[data-theme=dark] .btn-pill-accent-blue:hover{color:#121214}.btn-pill-ask-ai{cursor:pointer;background-color:var(--accent-color)!important;color:#fff!important;border:1px solid var(--border-color)!important;border-radius:var(--radius-sm)!important;font-weight:600!important;font-family:var(--font-sans)!important;min-height:44px!important;box-shadow:none!important;align-items:center!important;gap:.5rem!important;padding:.5rem 1.25rem!important;font-size:.85rem!important;text-decoration:none!important;transition:all .2s!important;display:inline-flex!important}.btn-pill-ask-ai:hover{background-color:var(--accent-hover)!important;color:#fff!important;box-shadow:none!important;transform:translateY(-1px)!important}.btn-pill-ask-ai:active{transform:translateY(1px)!important}.portfolio-shell{min-height:100dvh}.portfolio-main-column{width:100%;min-width:0;transition:width .45s cubic-bezier(.65,0,.35,1)}.portfolio-shell--chat-open .portfolio-main-column{width:70vw}@media (min-width:1200px){.portfolio-shell--chat-open .navbar-portfolio .nav-links{display:none}.portfolio-shell--chat-open .navbar-portfolio .nav-links.active{background-color:var(--bg-primary);border:1px solid var(--border-color);z-index:101;flex-direction:column;align-items:stretch;gap:.25rem;padding:.75rem 1rem;display:flex;position:absolute;top:100%;left:auto;right:1rem;transform:none}.portfolio-shell--chat-open .navbar-portfolio .mobile-menu-btn{justify-content:center;align-items:center;display:inline-flex}.portfolio-shell--chat-open .navbar-portfolio .nav-resume-btn{display:none!important}}[data-theme=dark] .btn-pill-ask-ai,[data-theme=dark] .btn-pill-ask-ai:hover{color:#121214!important}.btn-pill-secondary{background-color:var(--btn-secondary-bg);color:var(--btn-secondary-text);border-color:var(--border-color)}.btn-pill-secondary:hover{background-color:var(--bg-secondary);text-decoration:none}.chat-card-container{width:100%;max-width:500px;position:relative}.portfolio-chat-box{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);height:540px;min-height:540px;box-shadow:none;text-align:left;flex-direction:column;display:flex;overflow:hidden}.chat-panel{z-index:110;background:var(--bg-chat-panel);border-left:1px solid var(--border-color);visibility:hidden;pointer-events:none;flex-direction:column;width:30vw;min-width:360px;height:100dvh;transition:transform .45s cubic-bezier(.65,0,.35,1),visibility .45s;display:flex;position:fixed;inset:0 0 0 auto;overflow:hidden;transform:translate(100%)}.chat-panel--open{visibility:visible;pointer-events:auto;transform:translate(0)}.chat-panel[aria-hidden=true]{visibility:hidden;pointer-events:none}.chat-panel .chat-card-container{flex:auto;min-width:0;max-width:none;min-height:0;display:flex}.chat-panel .portfolio-chat-box{width:100%;height:100dvh;min-height:0;box-shadow:none;border:0;border-radius:0}.chat-panel .chat-body{min-height:0}[data-theme=light] .portfolio-chat-box{background-color:var(--bg-card);box-shadow:none;border:0}.chat-panel .portfolio-chat-box{background-color:var(--bg-chat-panel)}.chat-header{box-sizing:border-box;background-color:#0000;border-bottom:0;flex-shrink:0;justify-content:space-between;align-items:center;height:4rem;padding:0 1.25rem;display:flex}.chat-header-identity{align-items:center;gap:.5rem;display:flex}.chat-header-title{font-family:var(--font-sans);letter-spacing:-.02em;color:var(--text-primary);text-transform:none;font-size:1rem;font-weight:550}.chat-header-actions{align-items:center;gap:.75rem;display:flex}.chat-header-close-btn{width:30px;height:30px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:0;justify-content:center;align-items:center;padding:0;transition:color .15s,background-color .15s;display:inline-flex}.chat-header-close-btn:hover{color:var(--text-primary);background:var(--bg-secondary)}.chat-suggestions{flex-direction:column;gap:.5rem;display:flex}.chat-suggestions-label{font-family:var(--font-sans);letter-spacing:0;text-transform:none;color:var(--text-secondary);margin:0;font-size:.78rem}.chat-suggestions-list{margin:0;padding:0;list-style:none}.chat-suggestion{width:100%;min-height:48px;color:var(--text-primary);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;padding:.55rem .6rem;transition:background-color .15s;display:grid}.chat-suggestion:hover{background-color:var(--bg-secondary)}.chat-suggestion-query{font-family:var(--font-sans);font-size:.96rem;line-height:1.4}.chat-suggestion-arrow{color:var(--text-secondary);transition:transform .15s,color .15s}.chat-suggestion:hover .chat-suggestion-arrow,.chat-suggestion:focus-visible .chat-suggestion-arrow{color:var(--text-primary);transform:translate(2px)}.chat-body{overscroll-behavior-y:contain;scrollbar-width:thin;scrollbar-color:var(--border-color) transparent;flex:1;padding:1.25rem 1.25rem 1.5rem;overflow-y:auto}.chat-body::-webkit-scrollbar{width:4px}.chat-body::-webkit-scrollbar-track{background:0 0}.chat-body::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:0}.chat-body::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.chat-body-content{flex-direction:column;gap:1.25rem;display:flex}.chat-msg{flex-direction:column;display:flex}@keyframes msgSlideIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.chat-msg.bot{align-self:flex-start;width:100%}.chat-msg.user{align-self:flex-end;max-width:85%}.chat-msg.bot .msg-text-block{color:var(--text-primary);font-size:.935rem;line-height:1.6;font-family:var(--font-sans)}.chat-msg.bot .msg-text-block p{color:inherit;margin-bottom:.65rem}.chat-msg.user .msg-text-block p{color:inherit;margin:0}.chat-msg.bot .msg-text-block p:last-child{margin-bottom:0}.chat-msg.user .msg-text-block{background-color:var(--text-primary);color:var(--bg-primary);font-size:.88rem;line-height:1.45;font-family:var(--font-sans);border-radius:2px;padding:.55rem .85rem}.chat-stream-caret{background-color:var(--text-primary);vertical-align:-.15em;border-radius:1px;width:6px;height:1em;margin-left:2px;animation:.8s cubic-bezier(.4,0,.6,1) infinite streamCaretBlink;display:inline-block}@keyframes streamCaretBlink{0%,to{opacity:1}50%{opacity:0}}.mentat-trace-wrapper{flex-direction:column;align-items:flex-start;width:100%;margin-top:.65rem;display:flex}.chat-sources-toggle{color:var(--text-secondary);font-family:var(--font-mono);cursor:pointer;touch-action:manipulation;background:0 0;border:0;align-items:center;gap:.35rem;padding:0;font-size:.68rem;line-height:1.5;transition:color .15s;display:inline-flex}.chat-sources-toggle:hover{color:var(--text-primary);text-underline-offset:3px;text-decoration:underline}.chat-sources-arrow{transition:transform .2s cubic-bezier(.16,1,.3,1)}.chat-sources-arrow.is-open{transform:rotate(180deg)}.chat-sources-details{width:100%;max-width:480px;overflow:hidden}.chat-sources-list{border-top:1px solid var(--border-color);flex-direction:column;gap:.25rem;margin-top:.4rem;padding-top:.45rem;display:flex}.mentat-trace-item{font-family:var(--font-mono);flex-wrap:wrap;align-items:baseline;gap:.5rem;font-size:.68rem;line-height:1.4;display:flex}.trace-item-key{color:var(--text-secondary);flex:none}.trace-item-val{color:var(--text-secondary);text-align:left;word-break:break-word}.trace-item-val.status-verified{letter-spacing:.01em;font-weight:600}.chat-error-block{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:2px;flex-direction:column;align-items:flex-start;gap:.5rem;padding:.65rem .85rem;display:flex}.chat-error-text{color:var(--text-secondary);margin:0;font-size:.84rem;line-height:1.4}.chat-retry-btn{background-color:var(--bg-card);border:1px solid var(--border-color);color:var(--text-primary);font-family:var(--font-mono);cursor:pointer;touch-action:manipulation;border-radius:2px;align-items:center;gap:.35rem;padding:.3rem .75rem;font-size:.74rem;font-weight:600;transition:all .15s;display:inline-flex}.chat-retry-btn:hover{border-color:var(--text-primary);transform:translateY(-1px)}.chat-retry-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.typing-status{font-family:var(--font-sans);color:var(--text-secondary);align-items:center;gap:.6rem;font-size:.875rem;display:inline-flex}.typing-indicator{align-items:center;gap:4px;display:flex}.typing-dot{background-color:var(--text-secondary);opacity:.5;border-radius:50%;width:3px;height:3px;animation:1.4s ease-in-out infinite both pulseDot}.typing-dot:first-child{animation-delay:-.32s}.typing-dot:nth-child(2){animation-delay:-.16s}@keyframes pulseDot{0%,80%,to{opacity:.4;transform:scale(.6)}40%{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.typing-dot{animation:none}}.chat-dock{background-color:#0000;border-top:0;flex-direction:column;gap:.75rem;padding:1rem 1.25rem 1.25rem;display:flex}.btn-pill-primary:hover .btn-arrow-icon{transform:translate(4px)}.chat-chips-container{flex-wrap:wrap;align-items:center;gap:.15rem 1rem;display:flex}.chat-chip{min-height:34px;color:var(--text-secondary);font-family:var(--font-mono);cursor:pointer;text-align:left;background:0 0;border:0;padding:.2rem 0;font-size:.72rem;font-weight:500;transition:color .15s,opacity .15s}.chat-chip:hover{color:var(--text-primary);text-underline-offset:3px;text-decoration:underline}.chat-chip:active{opacity:.65}.chat-input-wrapper{width:100%;position:relative}.chat-form{align-items:center;width:100%;display:flex;position:relative}.chat-input{border:0;border-bottom:1px solid var(--border-color);width:100%;color:var(--text-primary);font-family:var(--font-sans);background-color:#0000;border-radius:0;padding:.7rem 2.85rem .7rem 0;font-size:.88rem;transition:border-color .15s;box-shadow:none!important;outline:none!important}[data-theme=light] .chat-input{border:0;border-bottom:1px solid var(--border-color);color:var(--text-primary);background-color:#0000}.chat-input:focus,.chat-input:focus-visible{border-color:var(--text-primary);box-shadow:none!important;outline:none!important}[data-theme=light] .chat-input:focus,[data-theme=light] .chat-input:focus-visible{border-bottom-color:var(--text-primary);box-shadow:none!important;outline:none!important}.chat-send-btn{width:36px;height:36px;color:var(--text-primary);cursor:pointer;background-color:#0000;border:0;border-radius:0;justify-content:center;align-items:center;transition:background-color .15s,opacity .15s;display:flex;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.chat-send-btn:hover:not(:disabled){background-color:var(--bg-secondary)}.chat-send-btn:disabled{opacity:.25;cursor:not-allowed}.chat-disclaimer{color:var(--text-secondary);text-align:left;font-size:.72rem;line-height:1.4;font-family:var(--font-sans);opacity:.8;padding:.25rem 0 0;box-shadow:none!important;background:0 0!important;border:none!important}.telemetry-section{border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color);background-color:var(--bg-secondary);z-index:1;padding:1.5rem 0;position:relative}.telemetry-grid{grid-template-columns:repeat(3,1fr);align-items:center;width:100%;display:grid}.telemetry-cell{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:.5rem 2rem;display:flex;position:relative}.telemetry-cell:first-child{padding-left:.5rem}.telemetry-cell:last-child{padding-right:.5rem}.telemetry-cell:not(:last-child){border-right:1px solid var(--border-color)}.telemetry-status-dot{background-color:var(--accent-color);border-radius:50%;width:6px;height:6px;display:inline-block}.telemetry-value{font-family:var(--font-pixel);color:var(--text-primary);letter-spacing:-.02em;-webkit-text-stroke:.5px currentColor;text-shadow:none;text-align:center;margin-bottom:.75rem;font-size:clamp(2rem,3.4vw,3rem);font-weight:500;line-height:1}.telemetry-label{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);text-align:center;margin-bottom:.2rem;font-size:.78rem;font-weight:700;line-height:1.3}@media (max-width:768px){.telemetry-grid{grid-template-columns:1fr;gap:1.75rem}.telemetry-cell,.telemetry-cell:first-child,.telemetry-cell:last-child{padding-left:.5rem;padding-right:.5rem}.telemetry-cell:not(:last-child){border-right:none;border-bottom:1px solid var(--border-color);padding-bottom:1.75rem}.telemetry-cell:after{display:none!important}}.bento-featured-card{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);flex-direction:column;margin-top:1.5rem;margin-bottom:2rem;transition:border-color .2s,box-shadow .2s;display:flex;overflow:hidden}.bento-featured-card:hover{border-color:var(--border-hover)}.bento-terminal-header{background-color:var(--bg-secondary);border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:.65rem 1.25rem;display:flex}.bento-terminal-dots{align-items:center;gap:.4rem;display:flex}.bento-dot{background-color:var(--border-color);border-radius:50%;width:7px;height:7px;display:inline-block}.bento-terminal-tabs{align-items:center;gap:.25rem;display:flex}.bento-tab-btn{font-family:var(--font-mono);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;align-items:center;gap:.35rem;padding:.25rem .65rem;font-size:.72rem;font-weight:500;transition:all .15s;display:inline-flex}.bento-tab-btn:hover{color:var(--text-primary);background-color:var(--bg-card)}.bento-tab-btn.active{color:var(--text-primary);background-color:var(--bg-card);border-color:var(--border-color);font-weight:600}.bento-featured-content{grid-template-columns:1.15fr 1fr;min-height:380px;display:grid}@media (max-width:960px){.bento-featured-content{grid-template-columns:1fr}}.bento-media-pane{background-color:var(--bg-secondary);border-right:1px solid var(--border-color);flex-direction:column;display:flex;position:relative;overflow:hidden}@media (max-width:960px){.bento-media-pane{border-right:none;border-bottom:1px solid var(--border-color)}}.bento-demo-wrapper{background-color:#0e1117;justify-content:center;align-items:center;width:100%;height:100%;min-height:340px;display:flex;position:relative;overflow:hidden}.bento-demo-wrapper .project-thumb{background-color:#0e1117;width:100%;height:100%;position:relative}.bento-demo-wrapper .project-thumb img{object-fit:cover!important;object-position:left top!important}.bento-video-player{object-fit:cover;background-color:#000;width:100%;height:100%;display:block}.bento-specs-pane{flex-direction:column;justify-content:center;gap:1rem;height:100%;padding:1.5rem;display:flex}.specs-header{font-family:var(--font-mono);color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;font-size:.72rem;font-weight:700}.specs-table{flex-direction:column;gap:.5rem;display:flex}.specs-row{border-bottom:1px dashed var(--border-color);justify-content:space-between;align-items:center;padding:.45rem 0;font-size:.8rem;display:flex}.specs-key{color:var(--text-secondary);font-family:var(--font-sans)}.specs-val{font-family:var(--font-mono);color:var(--text-primary);text-align:right;font-weight:600}.bento-details-pane{flex-direction:column;justify-content:space-between;padding:2rem 2.25rem;display:flex}.bento-actions{flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:1.75rem;display:flex}.project-card-video-wrap{aspect-ratio:16/10;background-color:var(--bg-secondary);border-bottom:1px solid var(--border-color);width:calc(100% + 3rem);margin:-1.5rem -1.5rem 0;position:relative;overflow:hidden}.project-card-video{object-fit:cover;width:100%;height:100%;display:block}.projects-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-top:1.5rem;display:grid}.projects-grid>*{height:100%;display:flex}.project-featured,.project-card,.cert-publication-card{appearance:none;font:inherit;color:inherit;text-align:left;width:100%;height:100%}.project-featured:focus-visible,.project-card:focus-visible,.cert-publication-card:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}.project-featured{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:none;cursor:pointer;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);align-items:center;gap:2.5rem;margin-top:1.5rem;padding:2.5rem;transition:border-color .2s,transform .2s cubic-bezier(.16,1,.3,1);display:grid}.project-featured:hover{border-color:var(--accent-color)}.project-featured-media{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);flex-direction:column;align-self:stretch;display:flex;overflow:hidden}.project-featured-code{font-family:var(--font-mono);color:var(--text-primary);white-space:pre-wrap;word-break:break-word;flex:1;margin:0;padding:1.25rem;font-size:.8rem;line-height:1.7;overflow:auto}.project-featured-code code{color:inherit}.code-keyword{color:var(--accent-text);font-weight:600}.code-string{color:var(--accent-text)}.code-comment{color:var(--text-secondary);font-style:italic}.code-number{color:var(--text-primary);font-weight:600}.code-builtin{color:var(--accent-text);font-style:italic;font-weight:500}.code-function{color:var(--text-primary);font-weight:700}.project-featured-body{flex-direction:column;gap:1rem;display:flex}.project-featured-title{color:var(--text-primary);font-size:1.75rem;font-weight:700;line-height:1.2}.project-featured-summary{color:var(--text-secondary);font-size:1rem;line-height:1.6}@media (max-width:800px){.project-featured{grid-template-columns:1fr;padding:1.5rem}}.project-card{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;box-shadow:none;flex-direction:column;gap:1rem;padding:1.5rem;transition:transform .2s cubic-bezier(.16,1,.3,1),border-color .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden}.project-card:hover{border-color:var(--accent-color);box-shadow:none;transform:translateY(-2px)}.project-thumb{aspect-ratio:16/10;background-color:var(--bg-secondary);width:100%;position:relative;overflow:hidden}.project-thumb-card{border-bottom:1px solid var(--border-color);width:calc(100% + 3rem);margin:-1.5rem -1.5rem 0}.project-thumb-featured{width:100%;height:100%;position:relative}.project-featured-media:has(.project-thumb){background-color:#0000;border:none;align-self:center}.project-featured-media .project-thumb-featured{border:none}.modal-body .project-thumb-featured{margin-bottom:1.5rem}.project-header{flex-direction:column;flex:1;gap:.75rem;display:flex}.project-tags{flex-wrap:wrap;align-content:flex-start;gap:.45rem;min-height:2rem;display:flex}.project-category{font-family:var(--font-mono);letter-spacing:.03em;text-transform:uppercase;color:var(--accent-text);align-items:center;gap:.4rem;font-size:.72rem;font-weight:600;display:flex}.project-category svg{flex-shrink:0;width:15px;height:15px}.project-title{color:var(--text-primary);align-items:flex-start;min-height:3.25rem;font-size:1.25rem;font-weight:700;line-height:1.3;display:flex}.project-summary{color:var(--text-secondary);font-size:.92rem;line-height:1.5}.project-footer{border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;margin-top:auto;padding-top:1.25rem;display:flex}.project-link{color:var(--accent-text);align-items:center;gap:.25rem;font-size:.88rem;font-weight:700;display:flex}.project-link svg{stroke-width:2.5px;width:14px;height:14px}.all-projects-btn{min-height:44px;color:var(--text-primary);cursor:pointer;transition:color var(--transition-speed) ease;background:0 0;border:0;align-items:center;gap:.4rem;margin-top:2rem;padding:.5rem .25rem;font-size:1rem;font-weight:600;display:inline-flex}.all-projects-btn .all-projects-icon{transition:transform .2s cubic-bezier(.16,1,.3,1)}.all-projects-btn:is(:hover,:focus-visible){text-underline-offset:.25rem;text-decoration:underline;text-decoration-thickness:1px}.all-projects-btn:is(:hover,:focus-visible) .all-projects-icon{transform:translateY(-2px)}.project-feature{margin-bottom:clamp(4rem,8vw,6rem)}.project-feature-media,.project-row-media{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-secondary);cursor:pointer;width:100%;padding:0;transition:border-color .25s cubic-bezier(.16,1,.3,1),box-shadow .25s cubic-bezier(.16,1,.3,1);display:block;overflow:hidden}.project-feature-media:hover,.project-row-media:hover{border-color:var(--text-secondary)}.project-feature-media .project-thumb,.project-row-media .project-thumb{aspect-ratio:16/9;border:0;width:100%;height:auto;margin:0}.project-row-media .project-thumb{aspect-ratio:16/10}.project-feature-media img,.project-row-media img{transform-origin:50%;transition:transform .7s cubic-bezier(.22,1,.36,1)}.project-feature-media:is(:hover,:focus-visible) img,.project-row-media:is(:hover,:focus-visible) img{transform:scale(1.045)}.project-feature-body{grid-template-columns:repeat(2,minmax(0,1fr));gap:3rem;padding-top:1.75rem;display:grid}.project-feature-title{letter-spacing:-.04em;margin:.6rem 0 0;font-size:clamp(1.75rem,3vw,2.75rem);font-weight:600;line-height:1.08}.project-rows{border-top:1px solid var(--border-color);margin:0;padding:0;list-style:none}.project-row{border-bottom:0;grid-template-columns:minmax(0,4fr) minmax(0,6fr);align-items:center;gap:clamp(1.5rem,4vw,3.5rem);padding:clamp(1.75rem,3vw,2.5rem) 0;display:grid;position:relative}.project-motion-rule{background:var(--border-color);transform-origin:0;pointer-events:none;width:100%;height:1px;position:absolute;bottom:0;left:0}.project-row:nth-child(2n){grid-template-columns:minmax(0,6fr) minmax(0,4fr)}.project-row:nth-child(2n) .project-row-media{order:2}.project-row-title{letter-spacing:-.035em;margin:.5rem 0 .75rem;font-size:clamp(1.25rem,1.8vw,1.625rem);font-weight:600;line-height:1.12}.project-feature .project-category,.project-row .project-category{font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary);margin:0;font-size:.72rem}.project-row .project-summary{font-size:.95rem}.project-feature .project-summary,.project-row .project-summary{color:var(--text-secondary);margin:0 0 1.25rem;font-size:1rem}.project-links{align-items:center;gap:1.75rem;display:flex}.project-links .project-link{font:inherit;color:var(--text-primary);cursor:pointer;background:0 0;border:0;align-items:center;gap:.35rem;padding:0;font-size:.9rem;font-weight:600;transition:color .2s;display:inline-flex}.project-links .project-link .link-arrow,.project-links .project-link .link-arrow-diagonal{transition:transform .2s cubic-bezier(.16,1,.3,1);display:inline-block}.project-links .project-link:is(:hover,:focus-visible) .link-arrow{transform:translate(2px)}.project-links .project-link:hover .link-arrow-diagonal{transform:translate(2px,-2px)}.project-links .project-link:active .link-arrow{transform:translate(2px)}@media (prefers-reduced-motion:reduce){.project-motion-rule{transform:none!important}.project-feature-media img,.project-row-media img,.project-links .project-link .link-arrow,.project-links .project-link .link-arrow-diagonal,.all-projects-btn .all-projects-icon{transition:none}.project-feature-media:is(:hover,:focus-visible) img,.project-row-media:is(:hover,:focus-visible) img,.project-links .project-link .link-arrow,.project-links .project-link .link-arrow-diagonal,.all-projects-btn .all-projects-icon{transform:none}}.project-links .project-link-muted{color:var(--text-secondary)}@media (max-width:860px){.project-row,.project-row:nth-child(2n){grid-template-columns:minmax(0,1fr);gap:1.5rem}.project-row:nth-child(2n) .project-row-media{order:0}.project-feature-body{grid-template-columns:minmax(0,1fr);gap:1.25rem}}.skill-table{border-top:1px solid var(--border-color);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.skill-col{padding:1.5rem 1.5rem 2rem;position:relative}.skill-col-rule{background-color:var(--border-color);transform-origin:top;width:.5px;position:absolute;top:0;bottom:0;left:0}.skill-col:first-child .skill-col-rule{display:none}.skill-col-title{font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary);justify-content:space-between;gap:.75rem;margin:0 0 1.25rem;font-size:.72rem;font-weight:500;display:flex}.skill-col-count{opacity:.6}.skill-col-list{margin:0;padding:0;list-style:none}.skill-row-icon{opacity:.55;flex-shrink:0;align-self:center;width:12px;height:12px;transition:opacity .2s}.skill-row:hover .skill-row-icon{opacity:1}.skill-row{color:var(--text-secondary);transition:color var(--transition-speed) ease;border-top:none;align-items:center;gap:.85rem;padding:.6rem 0;font-size:.95rem;display:flex;position:relative}.skill-row-rule{background-color:var(--border-color);transform-origin:0;height:.5px;position:absolute;top:0;left:0;right:0}.skill-row:hover{color:var(--text-primary)}.skill-row-num{font-family:var(--font-mono);opacity:.5;min-width:1.4em;font-size:.72rem;line-height:1}.skill-languages{border-top:none;flex-wrap:wrap;align-items:center;gap:.5rem 2rem;max-width:none;margin:0;padding-top:1.25rem;font-size:.9rem;display:flex;position:relative}.skill-languages-rule{background-color:var(--border-color);transform-origin:0;height:.5px;position:absolute;top:0;left:0;right:0}.skill-languages-label{font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary);font-size:.72rem;line-height:1}@media (max-width:960px){.skill-table{grid-template-columns:repeat(2,minmax(0,1fr))}.skill-col:nth-child(odd) .skill-col-rule{display:none}}@media (max-width:560px){.skill-table{grid-template-columns:minmax(0,1fr)}.skill-col,.skill-col:first-child{padding-left:0}.skill-col-rule{display:none}}.github-contrib-card{max-width:100%;box-shadow:none;margin-top:1rem;position:relative;overflow:visible}.github-contrib-header{margin-bottom:.75rem}.contrib-count{color:var(--text-primary);font-size:.95rem;font-weight:400}[data-theme=dark] .contrib-count{color:#c9d1d9}.github-contrib-scroll-area{-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--border-color) transparent;width:100%;max-width:100%;padding-bottom:.5rem;overflow-x:auto}.github-contrib-scroll-area::-webkit-scrollbar{height:4px}.github-contrib-scroll-area::-webkit-scrollbar-track{background:0 0}.github-contrib-scroll-area::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}.github-contrib-scroll-content{width:100%}.month-labels-row{margin-bottom:4px;display:flex}.month-label-spacer{flex-shrink:0;width:32px}.month-labels{flex-grow:1;grid-template-columns:repeat(53,minmax(0,1fr));gap:3px;width:100%;display:grid}.month-label{color:var(--text-secondary);text-align:left;white-space:nowrap;grid-row:1;font-size:9px}[data-theme=dark] .month-label{color:#8b949e}.grid-and-days{align-items:stretch;margin-bottom:.75rem;display:flex}.day-labels{text-align:left;grid-template-rows:repeat(7,1fr);gap:3px;width:24px;margin-right:8px;display:grid}.day-label{color:var(--text-secondary);grid-column:1;align-items:center;font-size:9px;display:flex}[data-theme=dark] .day-label{color:#8b949e}.day-label:first-child{grid-row:2}.day-label:nth-child(2){grid-row:4}.day-label:nth-child(3){grid-row:6}.heatmap-grid{grid-template-rows:repeat(7,1fr);grid-template-columns:repeat(53,minmax(0,1fr));grid-auto-flow:column;gap:3px;width:100%;display:grid}@media (max-width:1024px){.github-contrib-scroll-content{min-width:860px}}.heatmap-cell{aspect-ratio:1;cursor:pointer;opacity:0;border-radius:2px;width:100%;transition:opacity .35s cubic-bezier(.16,1,.3,1),transform .35s cubic-bezier(.16,1,.3,1);position:relative;transform:scale(.6)}.github-contrib-card.is-inview .heatmap-cell{opacity:1;transition-delay:var(--col-delay,0s);transform:scale(1)}.heatmap-cell:hover{z-index:10;transition:transform .15s!important;transform:scale(1.35)!important}[data-theme=dark] .heatmap-cell:hover{outline:1px solid #fff6}[data-theme=light] .heatmap-cell:hover{outline:1px solid #0006}[data-theme=light] .heatmap-cell[data-level="0"]{background-color:#eee}[data-theme=light] .heatmap-cell[data-level="1"]{background-color:#ccc}[data-theme=light] .heatmap-cell[data-level="2"]{background-color:#999}[data-theme=light] .heatmap-cell[data-level="3"]{background-color:#555}[data-theme=light] .heatmap-cell[data-level="4"]{background-color:#000}[data-theme=dark] .heatmap-cell[data-level="0"]{background-color:#1e1e1e}[data-theme=dark] .heatmap-cell[data-level="1"]{background-color:#383838}[data-theme=dark] .heatmap-cell[data-level="2"]{background-color:#666}[data-theme=dark] .heatmap-cell[data-level="3"]{background-color:#aaa}[data-theme=dark] .heatmap-cell[data-level="4"]{background-color:#fff}.github-contrib-footer{border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;margin-top:.5rem;padding-top:.75rem;display:flex}@media (max-width:480px){.github-contrib-footer{flex-direction:column;align-items:flex-start;gap:.5rem}}[data-theme=dark] .github-contrib-footer{border-top-color:#30363d}.contrib-link{color:var(--text-secondary);font-size:11px;text-decoration:none}.contrib-link:hover{color:var(--accent-color);text-decoration:underline}[data-theme=dark] .contrib-link{color:#8b949e}[data-theme=dark] .contrib-link:hover{color:#58a6ff}.contrib-legend{color:var(--text-secondary);align-items:center;gap:.25rem;font-size:11px;display:flex}[data-theme=dark] .contrib-legend{color:#8b949e}.legend-box{border-radius:2px;width:10px;height:10px}[data-theme=light] .legend-box[data-level="0"]{background-color:#eee}[data-theme=light] .legend-box[data-level="1"]{background-color:#ccc}[data-theme=light] .legend-box[data-level="2"]{background-color:#999}[data-theme=light] .legend-box[data-level="3"]{background-color:#555}[data-theme=light] .legend-box[data-level="4"]{background-color:#000}[data-theme=dark] .legend-box[data-level="0"]{background-color:#1e1e1e}[data-theme=dark] .legend-box[data-level="1"]{background-color:#383838}[data-theme=dark] .legend-box[data-level="2"]{background-color:#666}[data-theme=dark] .legend-box[data-level="3"]{background-color:#aaa}[data-theme=dark] .legend-box[data-level="4"]{background-color:#fff}.heatmap-cell .tooltip{visibility:hidden;white-space:nowrap;color:#fff;text-align:center;z-index:100;opacity:0;width:max-content;font-family:var(--font-sans);pointer-events:none;background-color:#1a1a1e;border:1px solid #ffffff26;border-radius:4px;padding:.2rem .45rem;font-size:11px;font-weight:500;transition:opacity .12s;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);box-shadow:0 4px 12px #00000040}.heatmap-cell[data-placement=right] .tooltip{left:auto;right:0;transform:none}.heatmap-cell[data-placement=left] .tooltip{left:0;right:auto;transform:none}[data-theme=light] .heatmap-cell .tooltip{color:#fff;background-color:#18181b;border:1px solid #0003}.heatmap-cell .tooltip:after{content:"";border:4px solid #0000;border-top-color:#1a1a1e;position:absolute;top:100%;left:50%;transform:translate(-50%)}.heatmap-cell[data-placement=right] .tooltip:after{left:auto;right:6px;transform:none}.heatmap-cell[data-placement=left] .tooltip:after{left:6px;right:auto;transform:none}[data-theme=light] .heatmap-cell .tooltip:after{border-color:#18181b #0000 #0000}.heatmap-cell:hover .tooltip,.heatmap-cell:focus-visible .tooltip{visibility:visible;opacity:1}.heatmap-cell:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}.exp-layout-grid{grid-template-columns:1.1fr .9fr;align-items:start;gap:2.5rem;display:grid}@media (max-width:980px){.exp-layout-grid{grid-template-columns:1fr;gap:3rem}}.exp-block{width:100%}.exp-block-header{border-bottom:1px solid var(--border-color);-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:baseline;margin-bottom:.75rem;padding-bottom:.85rem;display:flex}.exp-block-label{letter-spacing:-.02em;color:var(--text-primary);font-size:1.25rem;font-weight:700}.exp-block-count{font-family:var(--font-mono);letter-spacing:.05em;color:var(--text-secondary);font-size:.75rem;font-weight:600}.exp-log-list{flex-direction:column;display:flex}.exp-rail{padding-left:1.25rem;position:relative}.exp-rail-track{background-color:var(--border-color);width:1px;position:absolute;top:.75rem;bottom:.75rem;left:0;overflow:hidden}.exp-rail-fill{background-color:var(--text-secondary);opacity:.4;transform-origin:top;width:100%;height:100%}@media (max-width:720px){.exp-rail{padding-left:.85rem}}.exp-log-entry{border-bottom:1px solid var(--border-color);grid-template-columns:160px 1fr;align-items:start;gap:0 2.5rem;padding:2rem 0 2rem .5rem;display:grid}.exp-log-entry:last-child{border-bottom:none}.exp-log-meta{padding-top:.15rem}.exp-log-date{font-family:var(--font-mono);color:var(--text-secondary);white-space:nowrap;align-items:center;gap:.5rem;font-size:.78rem;font-weight:500;line-height:1.5;display:flex}.exp-live-indicator{background-color:var(--accent-color);border-radius:50%;flex-shrink:0;width:6px;height:6px;position:relative}.exp-log-content{flex-direction:column;gap:.5rem;display:flex}.exp-log-header{flex-direction:column;gap:.25rem;display:flex}.exp-log-title{color:var(--text-primary);letter-spacing:-.02em;font-size:clamp(1.25rem,1.6vw,1.5rem);font-weight:600;line-height:1.35}.exp-log-company{align-items:center;gap:.5rem;display:inline-flex}.exp-company-name{font-family:var(--font-mono);color:var(--text-secondary);font-size:.82rem;font-weight:500;line-height:1.2}.exp-stat-badge{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-family:var(--font-mono);color:var(--text-primary);letter-spacing:.02em;align-items:center;gap:.45rem;width:fit-content;margin-top:.2rem;padding:.25rem .65rem;font-size:.78rem;font-weight:600;display:inline-flex}.exp-stat-dot{background-color:var(--accent-color);border-radius:50%;width:5px;height:5px}.exp-log-bullets{flex-direction:column;gap:.45rem;margin:.6rem 0 0;padding:0;list-style:none;display:flex}.exp-log-bullets li{color:var(--text-secondary);max-width:62ch;padding-left:1.2rem;font-size:.885rem;line-height:1.6;position:relative}.exp-log-bullets li:before{content:"▸";color:var(--text-secondary);opacity:.65;font-size:.75rem;line-height:1.6;position:absolute;top:0;left:0}.exp-log-desc{color:var(--text-secondary);max-width:60ch;margin-top:.35rem;font-size:.885rem;line-height:1.6}.company-logo{flex-shrink:0;align-items:center;display:inline-flex}@media (max-width:720px){.exp-log-entry{grid-template-columns:1fr;gap:.75rem;padding:1.5rem .5rem}.exp-log-meta{padding-top:0}}.tech-carousel{width:100vw;margin-bottom:2.5rem;margin-left:calc(50% - 50vw);-webkit-mask-image:linear-gradient(90deg,#0000,#000 6% 94%,#0000);mask-image:linear-gradient(90deg,#0000,#000 6% 94%,#0000)}.tech-carousel-row{width:100%;overflow:hidden}.tech-carousel-track{will-change:transform;align-items:center;gap:3.5rem;width:max-content;padding-right:3.5rem;animation-name:techScrollLeft;animation-timing-function:linear;animation-iteration-count:infinite;display:flex}.tech-carousel-row:hover .tech-carousel-track{animation-play-state:paused}.tech-carousel-logo{width:38px;height:38px;color:var(--text-secondary);opacity:.6;transition:opacity var(--transition-speed) ease, color var(--transition-speed) ease;flex-shrink:0}.tech-carousel-logo:hover{opacity:1;color:var(--accent-text)}@keyframes techScrollLeft{0%{transform:translate(0)}to{transform:translate(-25%)}}@media (prefers-reduced-motion:reduce){.tech-carousel-track{animation:none}}.spec-matrix-table{border-top:1px solid var(--border-color);flex-direction:column;margin-top:1.75rem;display:flex}.spec-matrix-row-wrap{position:relative}.spec-matrix-row{border-bottom:1px solid var(--border-color);border-radius:6px;grid-template-columns:240px 1fr;align-items:flex-start;gap:1.5rem;padding:1.35rem .75rem;transition:background-color .2s cubic-bezier(.16,1,.3,1);display:grid;position:relative}.spec-matrix-row:before{content:"";background:var(--text-primary);opacity:0;border-radius:2px;width:2px;transition:opacity .25s cubic-bezier(.16,1,.3,1),transform .25s cubic-bezier(.16,1,.3,1);position:absolute;top:20%;bottom:20%;left:0;transform:scaleY(.4)}.spec-matrix-row:hover{background-color:#ffffff04}[data-theme=light] .spec-matrix-row:hover{background-color:#00000004}.spec-matrix-row:hover:before{opacity:.8;transform:scaleY(1)}@media (max-width:768px){.spec-matrix-row{grid-template-columns:1fr;gap:.75rem;padding:1.15rem .5rem}}.spec-matrix-category{font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary);align-items:center;gap:.6rem;padding-top:.25rem;font-size:.76rem;font-weight:700;transition:color .2s;display:flex}.spec-matrix-row:hover .spec-matrix-category{color:var(--text-primary)}.spec-cat-icon{width:15px;height:15px;color:var(--text-secondary);flex-shrink:0;transition:color .2s,transform .2s}.spec-matrix-row:hover .spec-cat-icon{color:var(--text-primary);transform:scale(1.08)}.spec-matrix-items{flex-wrap:wrap;align-items:center;gap:.5rem 1.15rem;display:flex}.spec-matrix-tag{cursor:default;background:0 0;border:none;align-items:center;gap:.45rem;padding:0;display:inline-flex}.spec-skill-icon{width:14px;height:14px;color:var(--text-secondary);opacity:.75;flex-shrink:0;transition:opacity .2s,color .2s,filter .2s}.spec-matrix-tag-text{font-family:var(--font-sans);color:var(--text-secondary);white-space:nowrap;font-size:.88rem;font-weight:500;transition:color .2s,text-shadow .2s}.spec-matrix-tag:hover .spec-skill-icon{opacity:1;color:#fff;filter:drop-shadow(0 0 8px #ffffffbf)}.spec-matrix-tag:hover .spec-matrix-tag-text{color:#fff;text-shadow:0 0 8px #ffffff73}[data-theme=light] .spec-matrix-tag-text{color:var(--text-secondary)}[data-theme=light] .spec-matrix-tag:hover .spec-skill-icon{opacity:1;color:#000;filter:drop-shadow(0 0 4px #0000004d)}[data-theme=light] .spec-matrix-tag:hover .spec-matrix-tag-text{color:#000;text-shadow:0 0 1px #0003}.spec-matrix-lang-tag{font-family:var(--font-mono);align-items:center;gap:.4rem;font-size:.82rem;display:inline-flex}.spec-matrix-lang-tag:not(:last-child):after{content:"·";color:var(--border-color);margin-left:.85rem}.spec-matrix-lang-dot{color:var(--text-secondary);opacity:.6;font-size:.55rem}.spec-matrix-lang-name{color:var(--text-primary);font-weight:600}.spec-matrix-lang-level{color:var(--text-secondary);font-size:.76rem}.research-bento-grid{grid-template-columns:minmax(0,1.48fr) minmax(0,1fr);align-items:stretch;gap:4rem;margin-top:1.5rem;display:grid}@media (max-width:960px){.research-bento-grid{grid-template-columns:1fr;gap:3rem}}.research-featured-card{flex-direction:column;justify-content:space-between;min-width:0;height:100%;padding:0;transition:border-color .2s,box-shadow .2s;display:flex;position:relative}.research-journal-tag{font-family:var(--font-mono);color:var(--text-secondary);margin-bottom:.75rem;font-size:.72rem}.research-paper-title{color:var(--text-primary);letter-spacing:-.02em;margin-bottom:.75rem;font-size:clamp(1.35rem,2vw,1.6rem);font-weight:700;line-height:1.25}.research-authors-clean{font-family:var(--font-mono);color:var(--text-secondary);margin-bottom:0;font-size:.75rem;line-height:1.5}.research-authors-clean strong{color:var(--text-primary);font-weight:600}.research-card-body{flex-direction:column;flex:1;display:flex}.telemetry-benchmark-section{margin:2rem 0}.research-benchmark-caption{font-family:var(--font-mono);letter-spacing:.06em;color:var(--text-secondary);text-transform:uppercase;margin-top:.9rem;font-size:.68rem}.leaderboard-rows{flex-direction:column;gap:1.0625rem;display:flex}.leaderboard-meta-top{justify-content:space-between;align-items:baseline;gap:.5rem;margin-bottom:.375rem;line-height:1.5rem;display:flex}.leaderboard-model-name,.leaderboard-score-val{font-family:var(--font-mono);color:var(--text-secondary);font-variant-numeric:tabular-nums;font-size:.8rem}.leaderboard-row:first-child .leaderboard-model-name,.leaderboard-row:first-child .leaderboard-score-val{color:var(--text-primary);font-weight:600}.leaderboard-bar-track{background-color:var(--border-color);height:2px;min-height:2px;overflow:hidden}.leaderboard-bar-fill{background-color:var(--text-secondary);opacity:.5;height:2px;min-height:2px;display:block}.leaderboard-bar-fill.rank-1{background-color:var(--text-primary);opacity:1}.research-card-footer{flex-wrap:wrap;align-items:center;gap:1.75rem;display:flex}.research-action-btn{cursor:pointer;background:0 0;border:0;align-items:center;gap:.4rem;padding:0;font-size:.95rem;font-weight:500;text-decoration:none;transition:color .18s;display:inline-flex}.research-action-btn.primary{color:var(--text-primary)}.research-action-arrow{transition:transform .25s cubic-bezier(.16,1,.3,1)}.research-action-btn.primary:hover .research-action-arrow{transform:translate(4px)}.research-action-btn.secondary{color:var(--text-secondary)}.research-action-btn.secondary:hover{color:var(--text-primary)}.certs-stack-container{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;min-width:0;height:100%;padding:0;transition:border-color .2s,background-color .2s;display:flex}.certs-stack-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;margin-bottom:.35rem;padding-bottom:.9rem;display:flex}.certs-stack-title-wrap{justify-content:space-between;align-items:center;width:100%;display:flex}.certs-header-badge{font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase;color:var(--text-secondary);white-space:nowrap;font-size:.68rem;font-weight:700}.certs-count-pill{font-family:var(--font-mono);color:var(--text-secondary);border:1px solid var(--border-color);white-space:nowrap;background-color:#0000;border-radius:4px;padding:.15rem .45rem;font-size:.7rem;font-weight:600}.certs-track-viewport{width:100%;height:327px;min-height:327px;max-height:327px;position:relative;overflow:hidden}.certs-track-page{flex-direction:column;justify-content:space-between;width:100%;height:100%;display:flex;position:absolute;inset:0}.cert-stack-item{flex:1;justify-content:space-between;align-items:center;gap:.85rem;padding:.72rem 0;text-decoration:none;display:flex}.cert-stack-item:hover{text-decoration:none}.cert-item-info{flex:1;min-width:0}.cert-item-title{font-family:var(--font-sans);color:var(--text-primary);margin:0;font-size:.9rem;font-weight:600;line-height:1.35;transition:color .18s}.cert-stack-item:hover .cert-item-title{color:var(--text-primary)}.cert-item-meta{font-family:var(--font-mono);color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:.25rem .45rem;margin-top:.2rem;font-size:.74rem;line-height:1.4;display:flex}.cert-issuer-name{color:var(--text-secondary)}.cert-meta-divider{opacity:.4;flex-shrink:0}.cert-date-text{opacity:.85;flex-shrink:0}.cert-item-right{flex-shrink:0;align-items:center;gap:.6rem;display:flex}.cert-type-pill{font-family:var(--font-mono);color:var(--text-secondary);border:1px solid var(--border-color);white-space:nowrap;background-color:#ffffff05;border-radius:4px;padding:.18rem .45rem;font-size:.68rem}[data-theme=light] .cert-type-pill{background-color:#00000005}.cert-arrow-icon{color:var(--text-secondary);opacity:.5;flex-shrink:0;transition:opacity .18s,transform .18s cubic-bezier(.16,1,.3,1),color .18s}.cert-stack-item:hover .cert-arrow-icon{opacity:1;color:var(--text-primary);transform:translate(3px,-3px)}.certs-header-pills{align-items:center;gap:.45rem;display:flex}.certs-domain-tag{font-family:var(--font-mono);color:var(--text-primary);border:1px solid var(--border-color);letter-spacing:.02em;white-space:nowrap;background-color:#ffffff0a;border-radius:4px;padding:.15rem .45rem;font-size:.68rem;font-weight:600}[data-theme=light] .certs-domain-tag{background-color:#0000000a}.certs-pagination-footer{border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;padding-top:1.15rem;display:flex}.certs-page-info{font-family:var(--font-mono);color:var(--text-secondary);font-size:.7rem}.certs-page-controls{align-items:center;gap:.3rem;display:flex}.certs-page-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;width:32px;height:32px;transition:color .16s;display:inline-flex}.certs-page-btn:hover:not(:disabled){color:var(--text-primary)}.certs-page-btn:disabled{opacity:.3;cursor:not-allowed}.meta-mono{font-family:var(--font-mono);color:var(--text-secondary);margin-bottom:.5rem;font-size:.75rem;font-weight:500;line-height:1.4}.contact-finale-section{background-color:var(--bg-secondary);border-bottom:1px solid var(--border-color);border-top-left-radius:var(--radius-lg,1.25rem);border-top-right-radius:var(--radius-lg,1.25rem);z-index:1;max-width:100vw;margin-top:-2rem;padding:7rem 0 6rem;position:relative;overflow-x:clip}.contact-minimal-canvas{grid-template-columns:1fr;gap:3.5rem;display:grid}@media (max-width:900px){.contact-minimal-canvas{grid-template-columns:1fr;align-items:start;gap:2.75rem}}.contact-minimal-left{text-align:center;flex-direction:column;align-items:center;gap:1.15rem;padding-top:.75rem;padding-bottom:.75rem;display:flex}.contact-minimal-availability{font-family:var(--font-mono);color:var(--text-secondary);letter-spacing:.02em;font-size:.9rem;font-weight:500}.contact-minimal-headline{letter-spacing:-.05em;color:var(--text-primary)!important;border-bottom:none!important;margin:.25rem 0 .85rem!important;padding-bottom:0!important;font-size:clamp(2.75rem,7.5vw,6.5rem)!important;font-weight:700!important;line-height:1!important}.contact-minimal-subtext{color:var(--text-secondary);max-width:48ch;margin:0;font-size:1.05rem;line-height:1.65}.contact-minimal-right{flex-direction:column;display:flex}.contact-minimal-row{border-bottom:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;width:100%;font:inherit;text-align:left;background:0 0;border-top:none;border-left:none;border-right:none;flex-direction:row;justify-content:space-between;align-items:center;padding:clamp(1.25rem,2.5vw,1.75rem) 0;text-decoration:none;transition:background-color .2s,transform .22s cubic-bezier(.16,1,.3,1),border-color .2s;display:flex}.contact-minimal-right{border-top:1px solid var(--border-color)}.contact-minimal-row:hover{transform:translate(1rem)}.row-left-group{flex-direction:row;flex-shrink:0;align-items:center;gap:.85rem;display:flex}.row-icon{color:var(--text-secondary);vertical-align:middle;flex-shrink:0;transition:color .2s,transform .2s cubic-bezier(.16,1,.3,1);display:inline-block}.contact-minimal-row:hover .row-icon{color:var(--text-primary);transform:scale(1.15)}.row-title{font-family:var(--font-sans);letter-spacing:-.03em;color:var(--text-secondary);font-size:clamp(1.4rem,2.6vw,2.25rem);font-weight:600;line-height:1;transition:color .18s}.contact-minimal-row:hover .row-title{color:var(--text-primary)}.row-value{font-family:var(--font-mono);color:var(--text-secondary);align-items:center;gap:.35rem;font-size:1.1rem;transition:color .18s;display:inline-flex}.contact-minimal-row:hover .row-value{color:var(--text-primary)}.email-copy-label{vertical-align:bottom;line-height:1.2;display:inline-grid;position:relative;overflow:hidden}.email-copy-label>*{white-space:nowrap;grid-area:1/1}.email-copy-sizer{visibility:hidden}.email-copy-btn{width:14px;height:14px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:flex-end;align-items:center;padding:0;transition:color .18s;display:inline-flex}.contact-minimal-row:hover .email-copy-btn{color:var(--text-primary)}.copy-icon-wrap{width:14px;height:14px;color:inherit;justify-content:center;align-items:center;line-height:1;display:inline-flex}.copy-icon-wrap svg{width:14px;height:14px;display:block}.copy-icon-wrap.copied{color:var(--text-primary)}.row-arrow{font-family:var(--font-mono);font-size:.95rem;transition:transform .2s cubic-bezier(.16,1,.3,1),color .2s;display:inline-block}.contact-minimal-row:hover .row-arrow{color:var(--text-primary);transform:translate(3px,-3px)}.row-clock{font-variant-numeric:tabular-nums}.static-row{cursor:default}.footer{border-top:1px solid var(--border-color);background-color:var(--bg-primary);padding:2.25rem 0 2rem}.footer-content{flex-direction:column;gap:.65rem;display:flex}.footer-grid-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.footer-text{color:var(--text-secondary);font-size:.78rem;font-family:var(--font-mono);letter-spacing:.02em;margin:0}.footer-tech-stack{color:var(--text-secondary);font-size:.72rem;font-family:var(--font-mono);opacity:.75;letter-spacing:.01em;max-width:none;margin:0}.footer-links{flex-wrap:wrap;align-items:center;gap:1.35rem;display:flex}.footer-link-item{font-family:var(--font-mono);color:var(--text-secondary);cursor:pointer;transition:color var(--transition-speed) ease;background:0 0;border:none;align-items:center;gap:.3rem;padding:0;font-size:.78rem;text-decoration:none;display:inline-flex}.footer-link-item:hover{color:var(--text-primary)}.footer-link-arrow{font-size:.85rem;transition:transform .2s cubic-bezier(.16,1,.3,1);display:inline-block}.footer-link-item:hover .footer-link-arrow{transform:translate(2px,-2px)}.footer-top-arrow{font-size:.85rem;transition:transform .2s cubic-bezier(.16,1,.3,1);display:inline-block}.footer-back-to-top:hover .footer-top-arrow{transform:translateY(-2px)}.footer-location-tag{font-family:var(--font-mono);color:var(--text-secondary);opacity:.75;letter-spacing:.01em;font-size:.72rem}@media (max-width:768px){.footer-grid-row{flex-direction:column;align-items:flex-start;gap:.35rem}.footer-content{gap:1rem}}.modal-overlay{-webkit-backdrop-filter:blur(8px);z-index:1000;opacity:0;pointer-events:none;background-color:#12121473;justify-content:center;align-items:center;padding:1.5rem;transition:opacity .2s;display:flex;position:fixed;inset:0}.modal-overlay.active{opacity:1;pointer-events:auto}.modal-card{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);width:100%;max-width:840px;max-height:85vh;box-shadow:var(--shadow-modal);flex-direction:column;transition:transform .2s cubic-bezier(.16,1,.3,1);display:flex;overflow:hidden;transform:scale(.96)}.modal-overlay.active .modal-card{transform:scale(1)}.modal-header{border-bottom:1px solid var(--border-color);background-color:var(--bg-card);z-index:2;flex-shrink:0;justify-content:space-between;align-items:center;gap:1.5rem;padding:1.2rem 1.5rem;display:flex}.modal-heading{gap:.35rem;min-width:0;display:grid}.modal-eyebrow{color:var(--text-secondary);font-family:var(--font-mono);letter-spacing:.045em;text-transform:uppercase;font-size:.68rem;font-weight:600;line-height:1.35}.modal-title{color:var(--text-primary);text-wrap:balance;margin:0;font-size:clamp(1.15rem,2.3vw,1.45rem);font-weight:700;line-height:1.2}.modal-close-btn{border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;width:2.5rem;height:2.5rem;color:var(--text-primary);transition:background-color var(--transition-speed) ease;background:0 0;flex:none;justify-content:center;align-items:center;display:flex}.modal-close-btn:hover{background-color:var(--bg-secondary)}.modal-close-btn:focus-visible{outline:2px solid var(--text-primary);outline-offset:3px}.modal-body{padding:1.25rem 1.5rem 1.5rem;overflow-y:auto}.modal-section{border-bottom:1px solid var(--border-color);grid-template-columns:minmax(130px,.36fr) minmax(0,1fr);align-items:start;gap:2rem;padding:1.2rem 0;display:grid}.modal-section:last-child{border-bottom:0;padding-bottom:0}.modal-section h4{color:var(--text-secondary);font-size:.74rem;font-weight:700;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.035em;margin:0;line-height:1.5}.modal-section-content{min-width:0}.modal-section p{color:var(--text-secondary);margin:0;font-size:.94rem;line-height:1.65}.modal-section ul{margin:0;padding-left:1.1rem;list-style-type:disc!important}.modal-section li{color:var(--text-secondary);margin-bottom:.5rem;font-size:.94rem;line-height:1.6;display:list-item!important}.modal-section li:last-child{margin-bottom:0}.modal-section li strong{color:var(--text-primary)}.modal-code-block{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);margin:1rem 0 0;padding:.9rem 1rem;overflow-x:auto}.modal-code-block code{font-family:var(--font-mono);color:var(--text-primary);white-space:pre;font-size:.82rem;line-height:1.45;display:block}.modal-record-meta{color:var(--text-secondary);font-family:var(--font-mono);letter-spacing:.02em;font-size:.72rem;line-height:1.5}.modal-record-title{color:var(--text-primary);text-wrap:pretty;margin:.65rem 0;font-size:1.12rem;font-weight:650;line-height:1.4}.modal-record-meta--secondary{font-size:.68rem}.modal-section--footer{border-top:1px solid var(--border-color);border-bottom:0;grid-column:1/-1;justify-content:space-between;align-items:center;gap:1rem;padding:1.15rem 0 0;display:flex}.modal-section--footer:last-child{padding-bottom:0}.archive-table-wrapper{overflow-x:auto}.archive-table{border-collapse:collapse;text-align:left;width:100%;font-size:.92rem}.archive-table th,.archive-table td{border-bottom:1px solid var(--border-color);padding:.85rem 1rem}.archive-table th{font-weight:700;font-family:var(--font-mono);text-transform:uppercase;color:var(--text-secondary);background-color:var(--bg-secondary);font-size:.78rem}@media (max-width:640px){.modal-header{gap:.75rem;padding:1rem}.modal-body{padding:1rem 1rem 1.25rem}.modal-section{grid-template-columns:minmax(0,1fr);gap:.6rem;padding:1rem 0}.modal-section--footer{flex-direction:column;align-items:flex-start}.modal-section h4{font-size:.7rem}.modal-record-title{font-size:1rem}.archive-table-wrapper{overflow:visible}.archive-table,.archive-table tbody{display:block}.archive-table thead{display:none}.archive-table tr{border-bottom:1px solid var(--border-color);grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"project status""category status""stack stack";align-items:start;gap:.45rem .8rem;padding:.9rem 0;display:grid}.archive-table tr:last-child{border-bottom:0}.archive-table td{border:0;min-width:0;padding:0;font-size:.85rem;line-height:1.45;display:block}.archive-table td:first-child{grid-area:project}.archive-table td:nth-child(2){color:var(--text-secondary);grid-area:category;font-size:.78rem}.archive-table td:nth-child(2):before,.archive-table td:nth-child(3):before{color:var(--text-secondary);font-family:var(--font-mono);letter-spacing:.035em;font-size:.62rem;font-weight:600}.archive-table td:nth-child(2):before{content:"CATEGORY / "}.archive-table td:nth-child(3){color:var(--text-secondary);grid-area:stack;font-size:.78rem}.archive-table td:nth-child(3):before{content:"STACK / "}.archive-table td:nth-child(4){grid-area:1/status/span 2;justify-self:end}.archive-table .badge{padding:.3rem .55rem;font-size:.66rem}}.nav-resume-short{display:none}@media (min-width:769px) and (max-width:1180px){.nav-links{justify-self:center;gap:1.25rem;position:static;transform:none}.nav-resume-full{display:none}.nav-resume-short{display:inline}}@media (max-width:1024px){.container{padding-left:1.5rem;padding-right:1.5rem}.portfolio-hero-content{gap:2.5rem}.contact-minimal-canvas{gap:3rem}}@media (max-width:768px){.section{padding:3.5rem 0}.nav-container{height:4rem;padding:0 1.25rem}.nav-links{background-color:var(--bg-primary);flex-direction:column;display:none;position:absolute;top:4rem;left:0;right:0;transform:none}@supports (color:color-mix(in lab, red, red)){.nav-links{background-color:color-mix(in srgb, var(--bg-primary) 98%, transparent)}}.nav-links{-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--border-color);z-index:99;align-items:stretch;gap:.25rem;padding:1rem 1.25rem;box-shadow:0 20px 40px #00000026}.nav-links.active{display:flex}.nav-links .nav-link{border-bottom:1px solid var(--border-color);align-items:center;min-height:44px;padding:.75rem .5rem;font-size:.95rem;display:flex}@supports (color:color-mix(in lab, red, red)){.nav-links .nav-link{border-bottom:1px solid color-mix(in srgb, var(--border-color) 40%, transparent)}}.nav-links .nav-link:last-child{border-bottom:none}.mobile-menu-btn,.theme-toggle{touch-action:manipulation;justify-content:center;align-items:center;min-width:44px;min-height:44px;display:inline-flex}.hero-content,.portfolio-hero-content{text-align:center;grid-template-columns:1fr;gap:2.25rem;padding-top:2rem;padding-bottom:3rem}.hero-text-col{text-align:center;align-items:center}.hero-title-group{flex-direction:column;align-items:center;max-width:100%;display:flex}.hero-title{font-size:clamp(2.25rem,7vw,3.25rem)}.hero-description{max-width:50ch;margin:0 auto;font-size:1rem}.hero-actions{justify-content:center;gap:.75rem;width:100%}.hero-actions .btn-pill{min-height:44px;padding:.7rem 1.5rem}.profile-photo{max-width:280px;margin:0 auto}.chat-card-container{max-width:100%}.portfolio-chat-box{height:min(460px,100vh - 12rem)}.chat-dock{padding:.85rem 1.25rem 1rem}.chat-chips-container{flex-wrap:wrap;gap:.15rem 1rem}.chat-chip{white-space:nowrap;touch-action:manipulation;align-items:center;min-height:36px;padding:.2rem 0;font-size:.72rem;display:inline-flex}.chat-input{min-height:48px;padding-right:3.2rem;font-size:16px}.chat-send-btn{min-width:40px;min-height:40px;right:4px}.bento-featured-card{margin-top:1rem;margin-bottom:1.5rem}.bento-terminal-header{padding:.55rem .85rem}.bento-details-pane{padding:1.5rem 1.25rem}.bento-actions{flex-direction:column;align-items:stretch;width:100%;margin-top:1.25rem}.bento-actions .btn-pill{justify-content:center;width:100%;min-height:44px}.exp-log-entry{grid-template-columns:1fr;gap:.75rem;padding:1.5rem .5rem}.exp-log-meta{padding-top:0}.contact-finale-section{margin-top:-1.5rem;padding:4.5rem 0 4rem}.contact-minimal-canvas{grid-template-columns:1fr;gap:2.25rem}.contact-minimal-headline{font-size:clamp(2rem,6.5vw,3rem)}.contact-minimal-row{touch-action:manipulation;min-height:52px;padding:1rem .5rem}.modal-card{border-radius:var(--radius-lg);width:95vw;max-height:92vh}}@media (max-width:480px){.container{padding-left:1rem;padding-right:1rem}.nav-resume-full{display:none}.nav-resume-short{display:inline}.navbar-portfolio .nav-resume-btn{display:none!important}.navbar-portfolio .btn-pill-ask-ai{gap:.35rem!important;min-height:40px!important;padding:.4rem .7rem!important;font-size:.78rem!important;display:inline-flex!important}.nav-mobile-actions{border-top:1px solid var(--border-color);flex-direction:column;gap:.25rem;padding-top:.5rem;display:flex}.bento-tab-btn{min-height:36px;padding:.35rem .65rem;font-size:.74rem}.contact-minimal-row{flex-wrap:wrap;gap:.35rem}.row-value{word-break:break-all;font-size:1rem}.email-copy-label{font-size:1rem}}@media (max-width:1199px){.portfolio-shell--chat-open .portfolio-main-column{width:100%}.chat-panel{border-left:0;width:100vw;min-width:0}}@media (max-width:380px){.nav-container{padding-left:.75rem;padding-right:.75rem}.navbar-portfolio .btn-pill-ask-ai{padding-left:.55rem!important;padding-right:.55rem!important}}@media (prefers-reduced-motion:reduce){.portfolio-main-column,.chat-panel{transition:none}}@media (hover:none) and (pointer:coarse){.chat-chip:active,.btn-pill:active,.contact-minimal-row:active{opacity:.9;transform:scale(.97)}.contact-minimal-row:hover{background-color:#0000;transform:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.fullscreen-transition-overlay{z-index:999999;background-color:var(--bg-primary);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}@supports (color:color-mix(in lab, red, red)){.fullscreen-transition-overlay{background-color:color-mix(in srgb, var(--bg-primary) 88%, transparent)}}.fullscreen-transition-overlay{pointer-events:none;-webkit-user-select:none;user-select:none;overflow:hidden}.transition-pixel-stage{z-index:10;text-align:center;background:var(--bg-primary);border:1px solid var(--border-color);flex-direction:column;align-items:center;gap:.65rem;width:min(100% - 2rem,30rem);padding:1.25rem 1.5rem;display:flex;position:relative}.transition-pixel-eyebrow{font-family:var(--font-mono,monospace);letter-spacing:.1em;color:var(--text-secondary);align-items:center;gap:.5rem;font-size:.65rem;font-weight:500;display:inline-flex}.transition-pixel-brackets{color:var(--text-primary);font-weight:700}.transition-pixel-title{max-width:100%;font-family:var(--font-sans,sans-serif);letter-spacing:-.025em;color:var(--text-primary);font-size:clamp(1.125rem,3vw,1.5rem);font-weight:600;line-height:1.2}.transition-pixel-track{background:var(--border-color);width:100%;max-width:180px;height:1px;position:relative;overflow:hidden}.transition-pixel-bar{background:var(--text-primary);width:0%;height:100%;animation:.22s cubic-bezier(.16,1,.3,1) forwards transitionBarFill}@keyframes transitionBarFill{0%{width:0%}35%{width:45%}75%{width:88%}to{width:100%}}.transition-pixel-route{font-family:var(--font-mono,monospace);color:var(--text-secondary);letter-spacing:.08em;font-size:.72rem}.chat-console-glow-wrap{justify-content:center;width:100%;display:flex;position:relative}.chat-ambient-glow{filter:blur(20px);pointer-events:none;z-index:0;background:radial-gradient(circle,#ffffff14,#0000 70%);border-radius:24px;position:absolute;inset:-12px}[data-theme=light] .chat-ambient-glow{background:radial-gradient(circle,#0000000d,#0000 70%)}.exp-group+.exp-group{margin-top:3.5rem}.subsection-title{letter-spacing:-.02em;color:var(--text-primary);margin-bottom:1rem;font-size:1.25rem;font-weight:700}.exp-rows{border-bottom:1px solid var(--border-color);margin:0;padding:0;list-style:none}.exp-row{position:relative}.exp-row-rule{background:var(--border-color);transform-origin:0;height:1px;position:absolute;inset:0 0 auto}.exp-row-head{text-align:left;width:100%;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;grid-template-columns:11rem minmax(0,1fr) 1.5rem;align-items:start;gap:1.5rem;padding:1.5rem 0;display:grid}.exp-row-date{font-family:var(--font-mono);color:var(--text-secondary);align-items:center;gap:.5rem;padding-top:.4rem;font-size:.75rem;transition:color .24s;display:inline-flex}.exp-row-main{flex-direction:column;gap:.35rem;min-width:0;display:flex}.exp-row-title{letter-spacing:-.02em;color:var(--text-primary);font-size:clamp(1.25rem,1.8vw,1.625rem);font-weight:700;line-height:1.2}.exp-row-company{color:var(--text-secondary);align-items:center;gap:.5rem;font-size:.875rem;transition:color .24s;display:inline-flex}.exp-row-headline{max-width:62ch;color:var(--text-primary);margin-top:.4rem;font-size:1rem;line-height:1.55}.exp-row-head:not(.exp-row-head-static):hover .exp-row-date,.exp-row-head:not(.exp-row-head-static):hover .exp-row-company{color:var(--text-primary)}@supports (color:color-mix(in lab, red, red)){.exp-row-head:not(.exp-row-head-static):hover .exp-row-date,.exp-row-head:not(.exp-row-head-static):hover .exp-row-company{color:color-mix(in srgb, var(--text-primary) 85%, var(--text-secondary))}}.exp-row-toggle{width:1.5rem;height:1.5rem;color:var(--text-secondary);justify-content:center;align-items:center;padding:0;transition:color .15s;display:inline-flex}.exp-row-toggle-icon{transform-origin:50%;transition:transform .26s cubic-bezier(.16,1,.3,1);display:block}.exp-row-toggle[data-open=true] .exp-row-toggle-icon{transform:rotate(45deg)}.exp-row-head:hover .exp-row-toggle{color:var(--text-primary)}.exp-row-head-static{cursor:default}.exp-row-head:focus-visible{outline:2px solid var(--text-primary);outline-offset:2px}.exp-row-panel{opacity:0;visibility:hidden;will-change:grid-template-rows, opacity;grid-template-rows:0fr;transition:grid-template-rows .28s cubic-bezier(.16,1,.3,1),opacity .2s,visibility .28s step-end;display:grid}.exp-row-panel[data-open=true]{opacity:1;visibility:visible;grid-template-rows:1fr;transition:grid-template-rows .28s cubic-bezier(.16,1,.3,1),opacity .22s,visibility}.exp-row-panel-inner{min-height:0;overflow:hidden}.exp-row-panel-rule{background:var(--border-color);transform-origin:0;width:100%;height:1px;margin-bottom:1rem;display:block}.exp-row-details{max-width:68ch;color:var(--text-secondary);margin:0 0 1.5rem 12.5rem;padding-left:1.1rem;font-size:.9rem;line-height:1.6;list-style:outside}.exp-row-details li+li{margin-top:.5rem}@media (max-width:720px){.exp-row-head{grid-template-columns:minmax(0,1fr) 1.5rem;gap:.5rem 1rem;padding:1.25rem 0}.exp-row-date{grid-column:1/-1;padding-top:0}.exp-row-details{margin-left:0;padding-right:0}@media (prefers-reduced-motion:reduce){.exp-row-toggle-icon{transition:none!important;transform:none!important}}}.contact-headline-word-window{display:inline-block;position:relative}.contact-headline-word{display:inline-block}.contact-minimal-row.contact-motion-row{border-bottom-color:#0000;position:relative}.contact-motion-rule{background:var(--border-color);transform-origin:0;pointer-events:none;width:100%;height:1px;position:absolute;bottom:-1px;left:0}.contact-build-foundation{transform-origin:0;pointer-events:none;background:currentColor;height:1px;position:absolute;bottom:-.045em;left:0;right:.12em}.notfound-canvas{background-color:var(--bg-primary);flex-direction:column;height:100dvh;display:flex;position:relative;overflow:hidden}.notfound-ascii-canvas{pointer-events:none;z-index:0;width:100%;height:100%;position:absolute;inset:0}.notfound-container{z-index:1;flex-direction:column;justify-content:space-between;width:100%;max-width:1200px;height:100%;margin:0 auto;padding:1.75rem 2rem;display:flex;position:relative}.notfound-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding-bottom:1.25rem;display:flex}.notfound-brand{min-height:44px;color:var(--text-primary);align-items:center;gap:.75rem;display:inline-flex;text-decoration:none!important}.notfound-brand-icon{color:var(--accent-color);flex-shrink:0}.notfound-brand-name{font-family:var(--font-pixel,var(--font-mono));letter-spacing:-.02em;font-size:1.15rem;font-weight:700}.notfound-header-meta{font-family:var(--font-mono);color:var(--text-secondary);align-items:center;font-size:.78rem;display:flex}.notfound-theme-btn{min-height:44px;color:var(--text-primary);cursor:pointer;font-family:inherit;font-size:inherit;background:0 0;border:none;align-items:center;gap:.5rem;padding:0;transition:color .15s;display:inline-flex}.notfound-theme-btn:hover{color:var(--text-secondary)}.notfound-theme-swatch{background:linear-gradient(90deg,currentColor 50%,#0000 50%);border:1px solid;border-radius:50%;flex-shrink:0;width:11px;height:11px}.notfound-theme-label{text-align:left;width:5ch;display:inline-block}.notfound-scatter-stage{flex:1;grid-template-rows:auto auto;grid-template-columns:1.15fr 1fr;align-items:center;gap:clamp(1.25rem,3vw,3rem);padding:1.25rem 0;display:grid;position:relative}.notfound-scatter-word{flex-direction:column;display:flex}.notfound-scatter-page{text-align:right;grid-area:1/2;align-items:flex-end}.notfound-scatter-404{grid-area:1/1;align-self:center}.notfound-scatter-not{grid-area:2/1;align-self:flex-start;margin-top:-.75rem}.notfound-scatter-found{text-align:right;grid-area:2/2;align-items:flex-end;gap:1.25rem}.notfound-mega-glyph{font-family:var(--font-sans);letter-spacing:-.065em;color:var(--text-primary);-webkit-user-select:none;user-select:none;font-weight:800;line-height:.82}.notfound-scatter-404 .notfound-mega-glyph{letter-spacing:-.075em;font-size:clamp(7.5rem,19vw,15rem)}.notfound-scatter-page .notfound-mega-glyph,.notfound-scatter-not .notfound-mega-glyph,.notfound-scatter-found .notfound-mega-glyph{font-size:clamp(5rem,13vw,10.5rem)}.notfound-scatter-action{flex-direction:column;align-items:flex-end;gap:.75rem;max-width:32ch;display:flex}.notfound-scatter-desc{font-family:var(--font-sans);color:var(--text-secondary);margin:0;font-size:.95rem;line-height:1.45}.notfound-scatter-link{min-height:44px;font-family:var(--font-sans);color:var(--text-primary);align-items:center;gap:.5rem;font-size:1.15rem;font-weight:600;display:inline-flex;text-decoration:none!important}.notfound-scatter-link:hover{color:var(--text-primary);text-decoration:none!important}.notfound-scatter-link-text{color:var(--text-primary);padding-bottom:2px;display:inline-block;position:relative;text-decoration:none!important}.notfound-scatter-link-text:after{content:"";background-color:var(--text-primary);transform-origin:0;width:100%;height:1.5px;transition:transform .22s cubic-bezier(.16,1,.3,1);position:absolute;bottom:0;left:0;transform:scaleX(0)}.notfound-scatter-link:hover .notfound-scatter-link-text:after{transform:scaleX(1)}.notfound-scatter-arrow{color:var(--text-primary);font-size:1.25rem;transition:transform .22s cubic-bezier(.16,1,.3,1);display:inline-block;text-decoration:none!important}.notfound-scatter-link:hover .notfound-scatter-arrow{transform:translate(4px)}@media (prefers-reduced-motion:reduce){.notfound-scatter-link-text:after,.notfound-scatter-arrow{transition:none}}.notfound-footer{border-top:1px solid var(--border-color);font-family:var(--font-mono);color:var(--text-secondary);letter-spacing:.04em;justify-content:space-between;align-items:center;padding-top:1.25rem;font-size:.75rem;display:flex}@media (max-width:768px){.notfound-container{padding:1.25rem}.notfound-scatter-stage{flex-direction:column;justify-content:center;gap:.35rem;padding:.5rem 0;display:flex}.notfound-scatter-word{flex-direction:column;display:flex}.notfound-scatter-404{align-items:flex-start}.notfound-scatter-page{text-align:right;align-items:flex-end}.notfound-scatter-not{align-items:flex-start;margin-top:0}.notfound-scatter-found{text-align:right;align-items:flex-end;gap:.75rem}.notfound-scatter-action{text-align:right;align-items:flex-end;margin-top:.35rem}.notfound-scatter-404 .notfound-mega-glyph{font-size:clamp(3.75rem,16vw,5.5rem);line-height:.82}.notfound-scatter-page .notfound-mega-glyph,.notfound-scatter-not .notfound-mega-glyph,.notfound-scatter-found .notfound-mega-glyph{font-size:clamp(2.5rem,11vw,3.75rem);line-height:.82}.notfound-scatter-desc{font-size:.85rem}.notfound-scatter-link{font-size:.95rem}.notfound-footer{letter-spacing:-.01em;flex-direction:row;justify-content:space-between;align-items:center;gap:.5rem;padding-top:.85rem;font-size:.62rem}.notfound-footer-copy,.notfound-footer-status{white-space:nowrap}}@media (prefers-reduced-motion:reduce){.portfolio-main-column,.chat-panel{transition:none}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}
