:root{--color-surface: #0b0b0d;--color-surface-elevated: #1a1a1f;--color-surface-subtle: #16161a;--color-border: #26262c;--color-border-strong: #3a3a42;--color-text: #f5f5f5;--color-text-body: #dcdcdc;--color-text-muted: #b8b8c0;--color-text-dim: #8a8a92;--color-text-dimmer: #6a6a72;--color-accent-1: #cfff04;--color-accent-2: #ff9d00;--color-accent-3: #637a08;--highlight-text: #ffffff;--highlight-mark: rgba(207, 255, 4, .4);--highlight-glow: rgba(207, 255, 4, .22);--highlight-mark-position: 65%;--highlight-white-glow: rgba(255, 255, 255, .3);--highlight-glow-radius: 16px;--highlight-inner-glow-radius: 6px;--space-0: 0;--space-px: 1px;--space-0_5: .125rem;--space-1: .25rem;--space-1_5: .375rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--radius-none: 0;--radius-xs: 4px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 10px;--radius-xl: 12px;--radius-2xl: 16px;--radius-full: 9999px;--duration-fast: .1s;--duration-base: .15s;--duration-slow: .3s;--duration-slower: .5s;--easing-out: cubic-bezier(.16, 1, .3, 1);--easing-in-out: cubic-bezier(.4, 0, .2, 1);--easing-standard: ease;--blur-sm: 20px;--blur-md: 60px;--blur-lg: 120px;--text-style-display-family: "Hepta Slab", Georgia, "Times New Roman", serif;--text-style-display-weight: 600;--text-style-display-size: clamp(2.5rem, 8vw, 3.5rem);--text-style-display-line-height: 1.05;--text-style-display-letter-spacing: -.02em;--text-style-display-2-family: "Instrument Serif", Georgia, "Times New Roman", serif;--text-style-display-2-weight: 400;--text-style-display-2-style: italic;--text-style-display-2-size: clamp(1.875rem, 5vw, 2.5rem);--text-style-display-2-line-height: 1.15;--text-style-h1-family: "Hepta Slab", Georgia, "Times New Roman", serif;--text-style-h1-weight: 600;--text-style-h1-size: clamp(1.875rem, 5vw, 2.5rem);--text-style-h1-line-height: 1.1;--text-style-h1-letter-spacing: -.01em;--text-style-h2-family: "Instrument Serif", Georgia, "Times New Roman", serif;--text-style-h2-weight: 400;--text-style-h2-size: clamp(1.5rem, 4vw, 1.875rem);--text-style-h2-line-height: 1.15;--text-style-h3-family: "Instrument Serif", Georgia, "Times New Roman", serif;--text-style-h3-weight: 400;--text-style-h3-style: italic;--text-style-h3-size: clamp(1.25rem, 3vw, 1.5rem);--text-style-h3-line-height: 1.25;--text-style-body-lg-family: "Work Sans", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--text-style-body-lg-weight: 400;--text-style-body-lg-size: 1.125rem;--text-style-body-lg-line-height: 1.5;--text-style-body-family: "Work Sans", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--text-style-body-weight: 400;--text-style-body-size: 1rem;--text-style-body-line-height: 1.55;--text-style-meta-family: "IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, Monaco, Consolas, monospace;--text-style-meta-weight: 500;--text-style-meta-size: .8125rem;--text-style-meta-line-height: 1.4;--text-style-mono-family: "IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, Monaco, Consolas, monospace;--text-style-mono-weight: 400;--text-style-mono-size: .9375rem;--text-style-mono-line-height: 1.5}.text-display{font-family:var(--text-style-display-family);font-weight:var(--text-style-display-weight);font-size:var(--text-style-display-size);line-height:var(--text-style-display-line-height);letter-spacing:var(--text-style-display-letter-spacing)}.text-display-2{font-family:var(--text-style-display-2-family);font-weight:var(--text-style-display-2-weight);font-style:var(--text-style-display-2-style);font-size:var(--text-style-display-2-size);line-height:var(--text-style-display-2-line-height)}.text-h1{font-family:var(--text-style-h1-family);font-weight:var(--text-style-h1-weight);font-size:var(--text-style-h1-size);line-height:var(--text-style-h1-line-height);letter-spacing:var(--text-style-h1-letter-spacing)}.text-h2{font-family:var(--text-style-h2-family);font-weight:var(--text-style-h2-weight);font-size:var(--text-style-h2-size);line-height:var(--text-style-h2-line-height)}.text-h3{font-family:var(--text-style-h3-family);font-weight:var(--text-style-h3-weight);font-style:var(--text-style-h3-style);font-size:var(--text-style-h3-size);line-height:var(--text-style-h3-line-height)}.text-body-lg{font-family:var(--text-style-body-lg-family);font-weight:var(--text-style-body-lg-weight);font-size:var(--text-style-body-lg-size);line-height:var(--text-style-body-lg-line-height)}.text-body{font-family:var(--text-style-body-family);font-weight:var(--text-style-body-weight);font-size:var(--text-style-body-size);line-height:var(--text-style-body-line-height)}.text-meta{font-family:var(--text-style-meta-family);font-weight:var(--text-style-meta-weight);font-size:var(--text-style-meta-size);line-height:var(--text-style-meta-line-height)}.text-mono{font-family:var(--text-style-mono-family);font-weight:var(--text-style-mono-weight);font-size:var(--text-style-mono-size);line-height:var(--text-style-mono-line-height)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0}html{background:var(--color-surface);color-scheme:dark;-webkit-text-size-adjust:100%;text-size-adjust:100%}body{min-height:100svh;min-height:100dvh;min-height:100vh;background:var(--color-surface);color:var(--color-text-body);font-family:var(--text-style-body-family);font-size:var(--text-style-body-size);line-height:var(--text-style-body-line-height);font-weight:var(--text-style-body-weight);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;padding-left:env(safe-area-inset-left,0);padding-right:env(safe-area-inset-right,0);padding-bottom:env(safe-area-inset-bottom,0)}img,picture,video,canvas,svg{display:block;max-width:100%;height:auto}input,button,textarea,select{font:inherit;color:inherit}a{color:var(--color-text);text-decoration-thickness:1px;text-underline-offset:2px;transition:color var(--duration-base) var(--easing-standard)}a:hover{color:var(--color-accent-1)}::selection{background:var(--color-accent-1);color:var(--color-surface)}.hub{position:relative;min-height:100vh;min-height:100svh;min-height:100dvh}.slide-container{position:relative;width:100%;height:100vh;height:100svh;height:100dvh;overflow-y:auto;overflow-x:hidden;scroll-snap-type:y mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;padding-bottom:80px}.slide{position:relative;min-height:100vh;min-height:100svh;min-height:100dvh;scroll-snap-align:start;display:flex;align-items:center;justify-content:center;padding:var(--space-6) var(--space-4)}@media(min-width:640px){.slide{padding:var(--space-10) var(--space-8)}}@media(min-width:1025px){.slide{padding:var(--space-16) var(--space-12)}}@media(min-width:1280px){.slide{padding:var(--space-20) var(--space-16)}}.slide-inner{width:100%;max-width:1100px;margin-inline:auto;display:flex;flex-direction:column;gap:var(--space-4)}@media(min-width:640px){.slide-inner{gap:var(--space-6)}}.slide[data-slide-kind=placeholder] .slide-inner{align-items:flex-start;text-align:left;color:var(--color-text-body);font-family:var(--text-style-body-family);font-size:var(--text-style-body-size);line-height:var(--text-style-body-line-height)}.dot-rail{position:fixed;top:50%;left:var(--space-3);transform:translateY(-50%);z-index:30;display:none;flex-direction:column;align-items:stretch;gap:var(--space-1);padding:var(--space-2)}@media(max-width:639.98px){.dot-rail{display:flex;left:var(--space-2);top:50%;transform:translateY(-50%);gap:3px;padding:3px;background:transparent}}@media(min-width:640px)and (max-width:1024.98px){.dot-rail{display:flex;left:var(--space-3)}}@media(min-width:1025px){.dot-rail{display:flex;left:var(--space-5);gap:var(--space-2)}}@media(min-width:1280px){.dot-rail{left:var(--space-6)}}.dot-rail-item{appearance:none;background:transparent;border:none;padding:0;min-width:44px;min-height:44px;height:44px;width:44px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;border-radius:var(--radius-full);color:var(--color-text-dimmer);text-align:left;position:relative}@media(max-width:639.98px){.dot-rail-item{width:3px;height:10px;min-width:3px;min-height:10px;border-radius:2px}}@media(min-width:1025px){.dot-rail-item{width:140px;padding:0 var(--space-3);justify-content:flex-start;gap:var(--space-3)}}.dot-rail-item-dot{display:block;width:8px;height:8px;border-radius:var(--radius-full);background:var(--color-text-dimmer);flex-shrink:0;transition:transform var(--duration-base) var(--easing-out),background-color var(--duration-base) var(--easing-out),width var(--duration-base) var(--easing-out),box-shadow var(--duration-base) var(--easing-out)}@media(max-width:639.98px){.dot-rail-item-dot{width:100%;height:100%;border-radius:2px;background:var(--color-text-muted);opacity:.45}}.dot-rail-item-label{font-family:var(--text-style-meta-family);font-size:var(--text-style-meta-size);line-height:var(--text-style-meta-line-height);color:var(--color-text-muted);white-space:nowrap;opacity:0;transform:translate(-4px);transition:opacity var(--duration-base) var(--easing-out),transform var(--duration-base) var(--easing-out);pointer-events:none}[data-cap-hover=hover] .dot-rail-item:hover .dot-rail-item-dot{background:var(--color-text-muted);transform:scale(1.25)}@media(max-width:639.98px){[data-cap-hover=hover] .dot-rail-item:hover .dot-rail-item-dot{background:var(--color-text-dimmer);transform:none}}@media(min-width:1025px){[data-cap-hover=hover] .dot-rail-item:hover .dot-rail-item-label,.dot-rail-item:focus-visible .dot-rail-item-label,.dot-rail-item[data-active=true] .dot-rail-item-label,.dot-rail-item[aria-current=true] .dot-rail-item-label{opacity:1;transform:translate(0)}}.dot-rail-item[aria-current=true] .dot-rail-item-dot,.dot-rail-item[data-active=true] .dot-rail-item-dot{background:var(--color-accent-1);width:24px;box-shadow:0 0 var(--blur-sm) var(--highlight-glow)}@media(max-width:639.98px){.dot-rail-item[aria-current=true] .dot-rail-item-dot,.dot-rail-item[data-active=true] .dot-rail-item-dot{width:100%;box-shadow:0 0 var(--blur-sm) var(--highlight-glow);opacity:1}}.dot-rail-item[aria-current=true] .dot-rail-item-label,.dot-rail-item[data-active=true] .dot-rail-item-label{color:var(--color-text)}.site-footer{display:none;position:fixed;left:0;right:0;bottom:0;z-index:25;background:var(--color-surface);border-top:1px solid var(--color-border)}@media(min-width:640px){.site-footer{display:block}}.site-footer-bar-list{list-style:none;max-width:1100px;margin-inline:auto;display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:0 var(--space-4);min-height:56px}@media(min-width:640px){.site-footer-bar-list{justify-content:flex-end;padding:0 var(--space-8)}}.site-footer-chip{display:inline-flex;align-items:center;gap:var(--space-2);min-width:44px;min-height:44px;padding:0 var(--space-2);color:var(--color-text-muted);text-decoration:none;border-radius:var(--radius-md);transition:color var(--duration-base) var(--easing-standard),background var(--duration-base) var(--easing-standard)}[data-cap-hover=hover] .site-footer-chip:hover{color:var(--color-accent-1);background:var(--color-surface-elevated)}.site-footer-chip-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0;color:var(--color-accent-1)}.site-footer-chip-label{font-family:var(--text-style-meta-family);font-size:var(--text-style-meta-size);line-height:var(--text-style-meta-line-height);display:none}@media(min-width:640px){.site-footer-chip-label{display:inline}}.contact-slide{display:flex;flex-direction:column;gap:var(--space-6);width:100%}.contact-slide-heading{color:var(--color-text)}.contact-slide-subhead{color:var(--color-text-muted)}.contact-slide-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);grid-auto-rows:1fr;gap:var(--space-3);min-height:clamp(360px,68vh,640px)}@media(min-width:1025px){.contact-slide-list{grid-template-columns:repeat(4,1fr);gap:var(--space-4)}}.contact-slide-list li{display:flex}@media(prefers-reduced-motion:reduce){.slide-container{scroll-snap-type:none}.dot-rail-item:before{transition:none}}.slide[data-slide-kind=intro],.slide[data-slide-kind=ai-skills],.slide[data-slide-kind=journey]{overflow:hidden}.slide[data-slide-kind=intro] .slide-inner,.slide[data-slide-kind=ai-skills] .slide-inner,.slide[data-slide-kind=journey] .slide-inner{align-items:stretch;text-align:left}.slide[data-slide-kind=intro] .slide-inner,.slide[data-slide-kind=ai-skills] .slide-inner,.slide[data-slide-kind=journey] .slide-inner{color:var(--color-text-body);font-family:var(--text-style-body-family);font-size:var(--text-style-body-size);line-height:var(--text-style-body-line-height)}@media(max-width:639.98px){.slide[data-slide-kind=journey],.slide[data-slide-kind=ai-skills]{height:100vh;height:100svh;height:100dvh;flex-direction:column;align-items:stretch;justify-content:flex-start}.slide[data-slide-kind=journey] .slide-inner,.slide[data-slide-kind=ai-skills] .slide-inner{flex:1 1 auto;min-height:0;margin:0}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:44px;padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);font-family:var(--text-style-body-lg-family);font-size:var(--text-style-body-lg-size);line-height:var(--text-style-body-lg-line-height);font-weight:500;text-decoration:none;border:1px solid transparent;transition:background var(--duration-base) var(--easing-standard),color var(--duration-base) var(--easing-standard),border-color var(--duration-base) var(--easing-standard),transform var(--duration-base) var(--easing-out)}.btn-primary{background:var(--color-accent-1);color:var(--color-surface);border-color:var(--color-accent-1);min-height:56px;padding:var(--space-3) var(--space-6);box-shadow:0 0 var(--blur-sm) var(--highlight-glow)}[data-cap-hover=hover] .btn-primary:hover{background:var(--color-text);color:var(--color-surface);border-color:var(--color-text)}.btn-secondary{background:transparent;color:var(--color-text);border-color:var(--color-border-strong);min-height:56px;padding:var(--space-3) var(--space-6)}[data-cap-hover=hover] .btn-secondary:hover{border-color:var(--color-text-muted);background:var(--color-surface-elevated)}.btn-link{display:inline-flex;align-items:center;gap:var(--space-2);min-height:44px;padding:var(--space-2) 0;color:var(--color-text);text-decoration:none;font-family:var(--text-style-body-lg-family);font-size:var(--text-style-body-lg-size);line-height:var(--text-style-body-lg-line-height)}[data-cap-hover=hover] .btn-link:hover{color:var(--color-accent-1)}.intro-slide{position:relative;display:flex;flex-direction:column;gap:var(--space-6);width:100%}.intro-slide-bloom{position:absolute;top:-20%;right:-10%;width:60%;height:60%;background:radial-gradient(circle at center,var(--color-accent-1) 0%,transparent 70%);opacity:.06;filter:blur(var(--blur-lg));pointer-events:none;z-index:0}.intro-slide-top,.intro-slide-content,.intro-slide-actions,.intro-slide-meta{position:relative;z-index:1}.intro-slide-row{display:flex;align-items:stretch;gap:var(--space-10)}.intro-slide-content{display:flex;flex-direction:column;gap:var(--space-3);flex:1;min-width:0}.intro-avatar{position:relative;display:inline-block;align-self:center;width:auto;aspect-ratio:1 / 1;height:100%;max-height:280px;border-radius:var(--radius-full);flex-shrink:0;isolation:isolate}@media(max-width:639.98px){.intro-slide-row{flex-direction:column;align-items:flex-start;gap:var(--space-4)}.intro-avatar{align-self:flex-start;width:140px;height:140px;max-height:140px}@media(max-height:749.98px){.intro-avatar{display:none}}}.intro-avatar-beam{position:absolute;z-index:0;top:6%;left:6%;width:88%;height:88%;border-radius:var(--radius-full);--beam-color: var(--color-accent-1);background:radial-gradient(circle at 50% 50%,color-mix(in srgb,var(--beam-color) 54%,transparent) 0%,color-mix(in srgb,var(--beam-color) 18%,transparent) 42%,transparent 68%);filter:blur(14px);mix-blend-mode:screen;pointer-events:none}.intro-avatar-beam-a{animation:intro-avatar-spot-a 9s ease-in-out infinite}.intro-avatar-beam-b{animation:intro-avatar-spot-b 7s ease-in-out infinite}.intro-avatar-beam-c{animation:intro-avatar-spot-c 8s ease-in-out infinite}.intro-avatar-beam-d{animation:intro-avatar-spot-d 10s ease-in-out infinite}.intro-avatar-beam-b,.intro-avatar-beam-d{--beam-color: #f5f5f5}.intro-avatar-photo{position:relative;display:block;width:100%;height:100%;border-radius:var(--radius-full);overflow:hidden;border:1px solid color-mix(in srgb,var(--color-accent-1) 35%,transparent);box-shadow:inset 0 0 60px -24px color-mix(in srgb,var(--color-accent-1) 45%,transparent);z-index:1;background:var(--color-surface-elevated)}.intro-avatar-photo img{width:100%;height:100%;object-fit:cover;display:block}@keyframes intro-avatar-spot-a{0%,to{transform:translate(-42%,-26%);opacity:.55}50%{transform:translate(42%,22%);opacity:.9}}@keyframes intro-avatar-spot-b{0%,to{transform:translate(42%,26%);opacity:.9}50%{transform:translate(-42%,-22%);opacity:.55}}@keyframes intro-avatar-spot-c{0%,to{transform:translate(42%,-26%);opacity:.55}50%{transform:translate(-42%,22%);opacity:.9}}@keyframes intro-avatar-spot-d{0%,to{transform:translate(-42%,26%);opacity:.9}50%{transform:translate(42%,-22%);opacity:.55}}@media(prefers-reduced-motion:reduce){.intro-avatar-beam{animation:none}}.intro-slide-heading{color:var(--color-text)}.intro-slide-heading .hl{display:inline-block;white-space:nowrap}.intro-slide-tour-cue{color:var(--color-text-dim);margin-top:var(--space-2);text-align:left}.intro-slide-tour-cue--touch,.intro-slide-tour-cue--mouse{display:none}@media(hover:none){.intro-slide-tour-cue--touch{display:revert}}@media(hover:hover){.intro-slide-tour-cue--mouse{display:revert}}.intro-slide-subhead{color:var(--color-text-muted)}.intro-slide-body{color:var(--color-text-body)}.intro-slide-inline-link{color:var(--color-text);text-decoration:none;margin-left:var(--space-1);display:inline-block;white-space:nowrap}[data-cap-hover=hover] .intro-slide-inline-link:hover{color:var(--color-accent-1)}.intro-slide-actions{display:flex;flex-direction:column;flex-wrap:wrap;gap:var(--space-3);align-items:stretch;margin-top:var(--space-6);margin-bottom:var(--space-6)}@media(max-width:639.98px){.intro-slide-actions{margin-top:var(--space-3);margin-bottom:var(--space-3)}}@media(min-width:640px){.intro-slide-actions{flex-direction:row}}.intro-slide-actions>.btn{width:100%}@media(min-width:640px){.intro-slide-actions>.btn{width:auto}}.intro-slide-meta{color:var(--color-text-dim);margin-top:var(--space-2)}.ai-skills-slide{display:flex;flex-direction:column;gap:var(--space-6);width:100%}@media(max-width:639.98px){.ai-skills-slide{height:100%;min-height:0}}.ai-skills-slide-header{display:flex;flex-direction:column;gap:var(--space-2)}@media(max-width:639.98px){.ai-skills-slide-header{flex-shrink:0}}@media(max-width:639.98px){.ai-skills-scroll,.experience-timeline{flex:1;min-height:0;overflow-y:auto;overscroll-behavior-y:auto;-webkit-overflow-scrolling:touch;padding:var(--space-1) 0 var(--space-2)}}.ai-skills-slide-heading{color:var(--color-text)}.ai-skills-slide-subhead{color:var(--color-text-muted)}.ai-skills-slide-quote{color:var(--color-accent-3);font-style:normal;--glow-color: var(--color-accent-3);text-shadow:0 0 .04em var(--color-accent-1),0 0 .15em var(--color-accent-3),0 0 .4em var(--color-accent-3)}@keyframes neon-flicker{0%,19.999%,22%,62.999%,64%,64.999%,72%,to{opacity:1}20%,21.999%,63%,63.999%,65%,71.999%{opacity:.33}}.ai-skills-slide-quote .flicker{animation:neon-flicker 3s linear infinite}.ai-skills-slide-quote .flicker:nth-child(2n){animation-delay:.3s;animation-direction:alternate-reverse}@media(prefers-reduced-motion:reduce){.ai-skills-slide-quote .flicker{animation:none}}.ai-skills-slide-grid{list-style:none;display:grid;grid-template-columns:1fr;gap:var(--space-3);margin:0;padding:0}@media(min-width:640px){.ai-skills-slide-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}}.ai-skills-card{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4);background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:border-color var(--duration-base) var(--easing-standard),box-shadow var(--duration-base) var(--easing-standard)}@media(min-width:640px){.ai-skills-card{padding:var(--space-5);gap:var(--space-3)}}[data-cap-hover=hover] .ai-skills-card:hover{border-color:var(--color-border-strong);box-shadow:0 0 var(--blur-sm) var(--highlight-glow)}.ai-skills-card-disclosure{display:contents}.ai-skills-card-summary{display:flex;flex-direction:column;gap:var(--space-2);cursor:pointer;list-style:none}.ai-skills-card-summary::-webkit-details-marker{display:none}@media(min-width:640px){.ai-skills-card-summary{cursor:default}}.ai-skills-card-glyph{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0;color:var(--color-accent-1);background:var(--color-surface-subtle);border-radius:var(--radius-md)}.ai-skills-card-head-row{display:contents}.ai-skills-card-head{display:flex;align-items:center;gap:var(--space-3)}.ai-skills-card-titles{display:flex;flex-direction:column;gap:var(--space-0_5);min-width:0}.ai-skills-card-title{color:var(--color-text)}.ai-skills-card-sub{color:var(--color-text-muted)}.ai-skills-card-tier2{color:var(--color-text-body);font-weight:500}@media(min-width:640px){.ai-skills-card-tier2{font-weight:400}}.ai-skills-card-tier3{color:var(--color-text-body)}@media(max-width:639.98px){.ai-skills-card-tier3{display:none}.ai-skills-card-disclosure[open] .ai-skills-card-tier3{display:revert}}.ai-skills-card-chevron{display:inline-block;width:10px;height:10px;border-right:2px solid var(--color-text-muted);border-bottom:2px solid var(--color-text-muted);transform:rotate(45deg);transition:transform var(--duration-base) var(--easing-out)}.ai-skills-card-disclosure[open] .ai-skills-card-chevron{transform:rotate(-135deg)}@media(min-width:640px){.ai-skills-card-chevron{display:none}}.ai-skills-card-link{color:var(--color-text);text-decoration:none;align-self:flex-start;min-height:44px;display:inline-flex;align-items:center;padding:var(--space-1) 0}[data-cap-hover=hover] .ai-skills-card-link:hover{color:var(--color-accent-1)}.ai-skills-slide-cta{display:flex;justify-content:flex-start;margin-top:var(--space-2)}@media(max-width:639.98px){.ai-skills-slide-cta{flex-shrink:0}.ai-skills-card{gap:var(--space-1)}.ai-skills-card-head-row{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-2)}}.experience-slide{display:flex;flex-direction:column;gap:var(--space-5);width:100%;height:100%;min-height:0}@media(max-width:639.98px){.experience-slide-header{display:flex;flex-direction:column;gap:var(--space-2);flex-shrink:0}}.experience-slide-heading{color:var(--color-text)}.experience-slide-subhead{color:var(--color-text-muted)}.experience-timeline{position:relative;margin-top:var(--space-3);display:grid;grid-template-columns:32px 24px 1fr;column-gap:var(--space-3);row-gap:var(--space-4);align-items:start}.experience-rail{grid-column:2;position:relative;width:2px;background:var(--color-accent-1);border-radius:var(--radius-full);opacity:.5;align-self:stretch;justify-self:center;-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 96px,#000 calc(100% - 96px),transparent 100%);mask-image:linear-gradient(to bottom,transparent 0,#000 96px,#000 calc(100% - 96px),transparent 100%)}.experience-tab{grid-column:1;grid-row:1 / -1;position:relative;align-self:start;display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:var(--color-accent-1);border-radius:var(--radius-md);cursor:grab;touch-action:none;user-select:none;box-shadow:0 0 var(--blur-sm) var(--highlight-glow);transition:transform var(--duration-base) var(--easing-out);will-change:transform}.experience-tab.is-dragging{transition:none}.experience-tab:active{cursor:grabbing}.experience-tab:focus-visible{outline:2px solid var(--color-accent-1);outline-offset:3px}.experience-tab-nub{position:absolute;right:-6px;top:50%;transform:translateY(-50%);width:0;height:0;border-top:7px solid transparent;border-bottom:7px solid transparent;border-left:7px solid var(--color-accent-1)}.experience-stops{grid-column:3;list-style:none;display:flex;flex-direction:column;gap:var(--space-4);margin:0;padding:0}.experience-stop{position:relative;display:block;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:1px solid transparent;cursor:pointer;transition:background var(--duration-base) var(--easing-standard),border-color var(--duration-base) var(--easing-standard),box-shadow var(--duration-base) var(--easing-standard)}.experience-stop:hover{background:var(--color-surface-subtle);box-shadow:0 0 var(--blur-sm) var(--highlight-glow)}.experience-stop:hover .experience-stop-body{filter:brightness(1)}.experience-stop-dot-button{position:absolute;left:-36px;top:var(--space-3);width:24px;height:24px;padding:0;background:transparent;border:0;cursor:pointer;display:flex;align-items:center;justify-content:center}.experience-stop-dot{display:inline-block;width:10px;height:10px;border-radius:var(--radius-full);background:var(--color-text-dimmer);border:2px solid var(--color-surface);transition:background var(--duration-base) var(--easing-standard),box-shadow var(--duration-base) var(--easing-standard),width var(--duration-base) var(--easing-standard),height var(--duration-base) var(--easing-standard)}.experience-stop.is-active{background:var(--color-surface-elevated);border-color:var(--color-border-strong);box-shadow:0 0 var(--blur-sm) var(--highlight-glow),0 0 var(--blur-md) var(--highlight-glow)}.experience-stop.is-active .experience-stop-body{filter:brightness(1.2)}.experience-stop.is-active .experience-stop-dot{width:14px;height:14px;background:var(--color-accent-1);border-color:var(--color-surface);box-shadow:0 0 var(--blur-sm) var(--highlight-glow)}.experience-stop-body{display:flex;flex-direction:column;gap:var(--space-1);padding-top:var(--space-1);filter:brightness(.8);transition:filter var(--duration-base) var(--easing-standard)}.experience-stop-years{color:var(--color-text-dim);letter-spacing:.04em}.experience-stop-company{color:var(--color-text)}.experience-stop.is-active .experience-stop-company{color:var(--highlight-text)}.experience-stop-role{color:var(--color-text-muted)}.experience-stop-takeaway{color:var(--color-text-body)}@media(max-width:639.98px){.experience-stop-role,.experience-stop-takeaway{display:none}.experience-stop.is-active .experience-stop-role,.experience-stop.is-active .experience-stop-takeaway{display:revert}}.experience-slide-cta{display:flex;justify-content:flex-start;margin-top:var(--space-2)}@media(max-width:639.98px){.experience-slide-cta{flex-shrink:0}}.social-row{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-5);padding:var(--space-6) var(--space-4);text-align:center;color:var(--color-text-body);text-decoration:none;background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:color var(--duration-base) var(--easing-standard),border-color var(--duration-base) var(--easing-standard),box-shadow var(--duration-base) var(--easing-standard)}[data-cap-hover=hover] .social-row:hover{color:var(--color-text);border-color:var(--color-border-strong);box-shadow:0 0 var(--blur-sm) var(--highlight-glow)}[data-cap-hover=hover] .social-row:hover .social-row-icon{transform:scale(1.05)}.social-row-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;flex-shrink:0;color:var(--color-accent-1);transition:transform var(--duration-base) var(--easing-out)}.social-row-icon svg{width:32px;height:32px}.social-row-name{font-family:var(--text-style-body-lg-family);font-size:var(--text-style-body-lg-size);line-height:var(--text-style-body-lg-line-height)}.social-row-arrow{color:var(--color-text-dim);font-size:var(--text-style-body-lg-size);transition:transform var(--duration-base) var(--easing-out),color var(--duration-base) var(--easing-standard)}[data-cap-hover=hover] .social-row:hover .social-row-arrow{color:var(--color-accent-1);transform:translateY(4px)}@media(prefers-reduced-motion:reduce){.btn,.ai-skills-card,.intro-slide-bloom,.intro-avatar,.experience-stop-dot,.experience-stop,.experience-tab{transition:none}[data-cap-hover=hover] .btn:hover{transform:none}}[data-page=resume]{background:var(--color-surface);color:var(--color-text-body);min-height:100vh}[data-page=resume] .resume-page{width:100%;max-width:720px;margin-inline:auto;padding:var(--space-8) var(--space-4) var(--space-16);display:flex;flex-direction:column;gap:var(--space-10)}@media(min-width:640px){[data-page=resume] .resume-page{padding:var(--space-12) var(--space-8) var(--space-20);gap:var(--space-12)}}[data-page=resume] .resume-pdf-cta{align-self:flex-start;display:inline-flex;align-items:center;gap:var(--space-2);min-height:44px;padding:var(--space-2) var(--space-4);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface-elevated);color:var(--color-text);font-family:var(--text-style-meta-family);font-size:var(--text-style-meta-size);line-height:var(--text-style-meta-line-height);text-decoration:none;transition:color var(--duration-base) var(--easing-standard),border-color var(--duration-base) var(--easing-standard),background var(--duration-base) var(--easing-standard)}[data-page=resume] .resume-pdf-cta:hover{color:var(--color-accent-1);border-color:var(--color-accent-1)}[data-page=resume] .resume-pdf-cta-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;color:var(--color-accent-1)}[data-page=resume] .resume-header{display:flex;flex-direction:column;gap:var(--space-3);padding-bottom:var(--space-6);border-bottom:1px solid var(--color-border)}[data-page=resume] .resume-name{color:var(--color-text);margin:0}[data-page=resume] .resume-headline{color:var(--color-text-muted);font-family:var(--text-style-display-2-family);font-size:var(--text-style-display-2-size);line-height:var(--text-style-display-2-line-height);font-style:var(--text-style-display-2-style);margin:0}[data-page=resume] .resume-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-4);color:var(--color-text-dim);font-family:var(--text-style-meta-family);font-size:var(--text-style-meta-size);line-height:var(--text-style-meta-line-height)}[data-page=resume] .resume-meta-item{display:inline-flex;align-items:center;gap:var(--space-2)}[data-page=resume] .resume-meta-dot{display:inline-block;width:4px;height:4px;border-radius:var(--radius-full);background:var(--color-text-dimmer);flex-shrink:0}[data-page=resume] .resume-meta a{color:inherit;text-decoration:none}[data-page=resume] .resume-meta a:hover{color:var(--color-accent-1)}[data-page=resume] .resume-social-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--space-2)}[data-page=resume] .resume-social-link{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:var(--space-2);border-radius:var(--radius-md);color:var(--color-text-muted);text-decoration:none;transition:color var(--duration-base) var(--easing-standard),background var(--duration-base) var(--easing-standard)}[data-page=resume] .resume-social-link:hover{color:var(--color-accent-1);background:var(--color-surface-elevated)}[data-page=resume] .resume-social-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px}[data-page=resume] .resume-summary{color:var(--color-text-body);margin:0}[data-page=resume] .resume-section{display:flex;flex-direction:column;gap:var(--space-4)}[data-page=resume] .resume-section-heading{color:var(--color-text);margin:0}[data-page=resume] .resume-experience-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-6)}[data-page=resume] .resume-experience-item{display:flex;flex-direction:column;gap:var(--space-2)}[data-page=resume] .resume-experience-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--space-2)}[data-page=resume] .resume-experience-company{color:var(--color-text);font-family:var(--text-style-body-lg-family);font-size:var(--text-style-body-lg-size);line-height:var(--text-style-body-lg-line-height);font-weight:500;margin:0}[data-page=resume] .resume-experience-sub{color:var(--color-text-muted);margin:0}[data-page=resume] .resume-experience-dates{color:var(--color-text-dim);font-family:var(--text-style-meta-family);font-size:var(--text-style-meta-size);line-height:var(--text-style-meta-line-height);margin:0;white-space:nowrap}[data-page=resume] .resume-experience-roles{display:flex;flex-direction:column;gap:var(--space-3)}[data-page=resume] .resume-experience-role{display:flex;flex-direction:column;gap:var(--space-1)}[data-page=resume] .resume-experience-role-title{color:var(--color-text);font-family:var(--text-style-h3-family);font-size:var(--text-style-h3-size);line-height:var(--text-style-h3-line-height);font-style:var(--text-style-h3-style);font-weight:400;margin:0}[data-page=resume] .resume-experience-role-sub{color:var(--color-text-muted);font-style:normal;font-family:var(--text-style-body-family);font-size:var(--text-style-body-size);line-height:var(--text-style-body-line-height)}[data-page=resume] .resume-experience-highlights,[data-page=resume] .resume-list{list-style:disc;margin:0;padding-left:var(--space-5);display:flex;flex-direction:column;gap:var(--space-1);color:var(--color-text-body)}[data-page=resume] .resume-experience-highlights li,[data-page=resume] .resume-list li{margin:0}[data-page=resume] .resume-education-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}[data-page=resume] .resume-education-item{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--space-2)}[data-page=resume] .resume-education-degree{color:var(--color-text);font-family:var(--text-style-body-lg-family);font-size:var(--text-style-body-lg-size);line-height:var(--text-style-body-lg-line-height);margin:0}[data-page=resume] .resume-education-field{color:var(--color-text-muted);font-family:var(--text-style-body-family);font-size:var(--text-style-body-size);line-height:var(--text-style-body-line-height);font-weight:400}[data-page=resume] .resume-education-institution{color:var(--color-text-muted);margin:0}[data-page=resume] .resume-education-year{color:var(--color-text-dim);font-family:var(--text-style-meta-family);font-size:var(--text-style-meta-size);line-height:var(--text-style-meta-line-height);white-space:nowrap}[data-page=resume] .resume-footer{padding-top:var(--space-6);border-top:1px solid var(--color-border);color:var(--color-text-dim);font-family:var(--text-style-mono-family);font-size:var(--text-style-mono-size);line-height:var(--text-style-mono-line-height);display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4);align-items:center}[data-page=resume] .resume-footer a{color:var(--color-text-muted);text-decoration:none}[data-page=resume] .resume-footer a:hover{color:var(--color-accent-1)}@media print{[data-page=resume]{background:#fff!important;color:#000!important}[data-page=resume] .resume-page{max-width:none;padding:0;gap:var(--space-6)}[data-page=resume] .resume-pdf-cta,[data-page=resume] .resume-social-link,[data-page=resume] .resume-header,[data-page=resume] .resume-footer,[data-page=resume] .resume-meta-dot{border-color:#ccc!important}[data-page=resume] .resume-pdf-cta,[data-page=resume] .resume-social-link{display:none!important}[data-page=resume] *,[data-page=resume] *:before,[data-page=resume] *:after{background:transparent!important;color:#000!important;box-shadow:none!important;text-shadow:none!important}[data-page=resume] a{color:#000!important;text-decoration:none!important}[data-page=resume] a[href]:after{content:""}[data-page=resume] .resume-experience-item,[data-page=resume] .resume-section,[data-page=resume] .resume-header,[data-page=resume] .resume-footer{break-inside:avoid;page-break-inside:avoid}[data-page=resume] .resume-section-heading{break-after:avoid;page-break-after:avoid}}:focus{outline:none}:focus-visible{outline:2px solid var(--color-accent-1);outline-offset:2px;border-radius:var(--radius-xs)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[data-cap-pointer=fine] .dot-rail-item:focus-visible{outline-width:2px;outline-offset:3px}@media print{html,body{background:#fff!important;color:#000!important}.dot-rail,.site-footer,.hero-locked-glow,.site-glow,[data-decorative]{display:none!important}*,*:before,*:after{background:transparent!important;color:#000!important;box-shadow:none!important;text-shadow:none!important;animation:none!important;transition:none!important;border-color:#ccc!important}img,picture,svg{filter:none!important}a[href]:after{content:" (" attr(href) ")";font-size:.85em;color:#000!important}.slide{page-break-inside:avoid;break-inside:avoid;min-height:0!important;height:auto!important}.slide-container{overflow:visible!important;height:auto!important;scroll-snap-type:none!important}.hub{display:block!important}}.hl{color:var(--highlight-text);text-shadow:0 0 var(--highlight-inner-glow-radius) var(--highlight-white-glow),0 0 var(--highlight-glow-radius) var(--highlight-glow);background-image:linear-gradient(transparent var(--highlight-mark-position),var(--highlight-mark) var(--highlight-mark-position));padding:0 0 var(--highlight-inner-glow-radius);box-decoration-break:clone;-webkit-box-decoration-break:clone}
