:root{--brand-400: #6ea8ff;--brand-500: #4f8cff;--brand-600: #2f6bff;--cyan-400: #35d6ff;--accent-warm: #ffb454;--gradient-brand: linear-gradient(120deg, var(--brand-500), var(--cyan-400));--gradient-text: linear-gradient(100deg, var(--brand-400) 0%, var(--cyan-400) 55%, var(--brand-400) 100%);--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: clamp(1.05rem, .98rem + .35vw, 1.2rem);--text-xl: clamp(1.25rem, 1.1rem + .6vw, 1.5rem);--text-2xl: clamp(1.6rem, 1.35rem + 1.1vw, 2.1rem);--text-3xl: clamp(2rem, 1.6rem + 1.9vw, 3rem);--text-4xl: clamp(2.5rem, 1.9rem + 3vw, 4.25rem);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--space-8: 4rem;--section-y: clamp(4.5rem, 3rem + 7vw, 8rem);--radius-sm: 8px;--radius-md: 14px;--radius-lg: 20px;--radius-xl: 28px;--radius-pill: 999px;--container: 1180px;--header-h: 72px;--ease-out: cubic-bezier(.22, 1, .36, 1);--transition: .22s var(--ease-out)}:root,:root[data-theme=dark]{color-scheme:dark;--bg: #070a12;--bg-alt: #0a0f1a;--surface: rgba(255, 255, 255, .032);--surface-solid: #0e1524;--surface-hover: rgba(255, 255, 255, .06);--border: rgba(255, 255, 255, .09);--border-strong: rgba(255, 255, 255, .16);--text: #e9eefb;--text-muted: #98a4bd;--text-subtle: #6f7b93;--accent: var(--brand-500);--accent-contrast: #ffffff;--accent-soft: rgba(79, 140, 255, .14);--success: #34d399;--danger: #f87171;--glow: radial-gradient( 60% 60% at 70% 20%, rgba(79, 140, 255, .22) 0%, rgba(53, 214, 255, .1) 40%, transparent 72% );--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 12px 32px rgba(0, 0, 0, .45);--shadow-lg: 0 28px 70px rgba(0, 0, 0, .55);--grid-line: rgba(255, 255, 255, .035)}:root[data-theme=light]{color-scheme:light;--bg: #f6f8fd;--bg-alt: #eef2fa;--surface: rgba(255, 255, 255, .85);--surface-solid: #ffffff;--surface-hover: #ffffff;--border: rgba(13, 22, 40, .1);--border-strong: rgba(13, 22, 40, .2);--text: #0b1424;--text-muted: #4d5a75;--text-subtle: #6b7794;--accent: #2563eb;--accent-contrast: #ffffff;--accent-soft: rgba(37, 99, 235, .1);--success: #059669;--danger: #dc2626;--gradient-text: linear-gradient(100deg, #2563eb 0%, #0891b2 55%, #2563eb 100%);--glow: radial-gradient( 60% 60% at 70% 20%, rgba(37, 99, 235, .16) 0%, rgba(8, 145, 178, .08) 40%, transparent 72% );--shadow-sm: 0 1px 2px rgba(13, 22, 40, .06);--shadow-md: 0 12px 30px rgba(13, 22, 40, .08);--shadow-lg: 0 26px 60px rgba(13, 22, 40, .12);--grid-line: rgba(13, 22, 40, .04)}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes gradient-pan{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes ping{75%,to{transform:scale(2.4);opacity:0}}@keyframes pulse-ring{0%{box-shadow:0 0 #4f8cff80}70%{box-shadow:0 0 0 14px #4f8cff00}to{box-shadow:0 0 #4f8cff00}}@keyframes nudge{0%,to{transform:translate(-50%)}50%{transform:translate(-50%,6px)}}@keyframes typing{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-4px);opacity:1}}@keyframes panel-in{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:none}}@keyframes spin{to{transform:rotate(360deg)}}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 1rem);-webkit-text-size-adjust:100%}body{background-color:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:var(--text-base);line-height:1.65;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;transition:background-color var(--transition),color var(--transition)}body.has-menu-open{overflow:hidden}img,svg,video{display:block;max-width:100%}img{height:auto}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit;color:inherit}button{cursor:pointer;background:none;border:none}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}::selection{background:var(--accent);color:var(--accent-contrast)}h1,h2,h3,h4{line-height:1.15;font-weight:700;letter-spacing:-.022em;text-wrap:balance}h1{font-size:var(--text-4xl)}h2{font-size:var(--text-3xl)}h3{font-size:var(--text-xl)}p{text-wrap:pretty}.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:clamp(1.15rem,4vw,2.5rem)}.section{position:relative;padding-block:var(--section-y);scroll-margin-top:var(--header-h)}.section:nth-of-type(2n){background:linear-gradient(var(--bg-alt),var(--bg-alt)) padding-box,var(--bg);border-block:1px solid var(--border)}.section-heading{max-width:62ch;margin-bottom:clamp(2.5rem,1.5rem + 3vw,4rem)}.section-heading--center{margin-inline:auto;text-align:center}.eyebrow{display:inline-flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);font-size:var(--text-xs);font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--accent)}.eyebrow:before{content:"";width:26px;height:1px;background:currentColor;opacity:.6}.section-intro{margin-top:var(--space-4);font-size:var(--text-lg);color:var(--text-muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}.skip-link{position:fixed;top:var(--space-3);left:var(--space-3);z-index:200;padding:.65rem 1.1rem;border-radius:var(--radius-sm);background:var(--accent);color:var(--accent-contrast);font-weight:600;transform:translateY(-160%);transition:transform var(--transition)}.skip-link:focus-visible{transform:translateY(0)}html[data-anim=on] .reveal{opacity:0;transition:opacity .7s var(--ease-out),transform .7s var(--ease-out)}html[data-anim=on] .reveal--up{transform:translateY(26px)}html[data-anim=on] .reveal--left{transform:translate(-26px)}html[data-anim=on] .reveal--right{transform:translate(26px)}html[data-anim=on] .reveal--scale{transform:scale(.96)}html[data-anim=on] .reveal.is-visible{opacity:1;transform:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:.7rem 1.25rem;border-radius:var(--radius-pill);font-size:var(--text-sm);font-weight:600;white-space:nowrap;border:1px solid transparent;transition:transform var(--transition),box-shadow var(--transition),background-color var(--transition),border-color var(--transition),opacity var(--transition)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn:not(:disabled):hover{transform:translateY(-2px)}.btn:not(:disabled):active{transform:translateY(0)}.btn--lg{padding:.9rem 1.6rem;font-size:var(--text-base)}.btn--primary{background:var(--gradient-brand);color:#04101f;box-shadow:0 8px 24px -8px #4f8cffb3}.btn--primary:not(:disabled):hover{box-shadow:0 14px 34px -10px #4f8cffd9}.btn--ghost{background:var(--surface);border-color:var(--border-strong);color:var(--text);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.btn--ghost:not(:disabled):hover{background:var(--surface-hover);border-color:var(--accent);color:var(--accent)}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--surface);color:var(--text-muted);transition:color var(--transition),border-color var(--transition),background-color var(--transition),transform var(--transition)}.icon-btn:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-soft);transform:translateY(-2px)}.link-arrow{display:inline-flex;align-items:center;gap:.4rem;font-size:var(--text-sm);font-weight:600;color:var(--accent);transition:gap var(--transition),opacity var(--transition)}.link-arrow:hover{gap:.7rem;opacity:.85}.disclosure{display:inline-flex;align-items:center;gap:.4rem;padding:.3rem 0;font-size:var(--text-sm);font-weight:600;color:var(--accent)}.disclosure svg{transition:transform var(--transition)}.disclosure svg.is-flipped{transform:rotate(180deg)}.chip{display:inline-flex;align-items:center;gap:var(--space-2);padding:.45rem .95rem;border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--surface);color:var(--text-muted);font-size:var(--text-sm);font-weight:600;transition:color var(--transition),background-color var(--transition),border-color var(--transition),transform var(--transition)}.chip:hover:not(:disabled){color:var(--text);border-color:var(--border-strong);transform:translateY(-1px)}.chip.is-active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.chip--action{text-align:left;line-height:1.35}.chip:disabled{opacity:.5;cursor:not-allowed}.chip__count{font-size:.68rem;font-variant-numeric:tabular-nums;opacity:.7}.tag-list{display:flex;flex-wrap:wrap;gap:.4rem;list-style:none;padding:0}.tag-list--compact .tag{font-size:.72rem;padding:.2rem .55rem}.tag{display:inline-flex;align-items:center;gap:.35rem;padding:.28rem .68rem;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--text-muted);font-size:var(--text-xs);font-weight:500;white-space:nowrap}.tag--live{border-color:color-mix(in srgb,var(--success) 45%,transparent);background:color-mix(in srgb,var(--success) 12%,transparent);color:var(--success);font-weight:600}.field{display:flex;flex-direction:column;gap:.4rem}.field label{font-size:var(--text-sm);font-weight:600;color:var(--text-muted)}.field input,.field textarea{width:100%;padding:.8rem 1rem;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface-solid);color:var(--text);transition:border-color var(--transition),box-shadow var(--transition)}.field input::placeholder,.field textarea::placeholder{color:var(--text-subtle)}.field input:focus,.field textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.field input.has-error,.field textarea.has-error{border-color:var(--danger)}.field input:disabled,.field textarea:disabled{opacity:.6}.field textarea{resize:vertical;min-height:120px}.field__error{font-size:var(--text-xs);color:var(--danger)}.field--honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.alert{display:flex;align-items:center;gap:var(--space-2);padding:.8rem 1rem;border-radius:var(--radius-md);font-size:var(--text-sm);border:1px solid}.alert--success{border-color:color-mix(in srgb,var(--success) 45%,transparent);background:color-mix(in srgb,var(--success) 12%,transparent);color:var(--success)}.alert--error{border-color:color-mix(in srgb,var(--danger) 45%,transparent);background:color-mix(in srgb,var(--danger) 12%,transparent);color:var(--danger)}.social-row{display:flex;align-items:center;gap:var(--space-2);list-style:none;padding:0}.card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.spin{animation:spin .9s linear infinite}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}html[data-anim=on] .reveal{opacity:1;transform:none}}.site-header{position:fixed;inset:0 0 auto 0;z-index:100;height:var(--header-h);display:flex;align-items:center;border-bottom:1px solid transparent;transition:background-color var(--transition),border-color var(--transition)}.site-header.is-scrolled{background:color-mix(in srgb,var(--bg) 82%,transparent);-webkit-backdrop-filter:blur(14px) saturate(140%);backdrop-filter:blur(14px) saturate(140%);border-bottom-color:var(--border)}.site-header__inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.site-header__tools{display:flex;align-items:center;gap:var(--space-2)}.scroll-progress{position:absolute;inset:auto 0 0 0;height:2px;background:var(--gradient-brand);transform-origin:0 50%;transform:scaleX(0);will-change:transform}.brand{display:inline-flex;align-items:center;gap:.7rem;min-width:0}.brand__mark{display:grid;place-items:center;width:38px;height:38px;flex-shrink:0;border-radius:12px;background:var(--gradient-brand);color:#04101f;font-weight:800;font-size:.85rem}.brand__text{display:flex;flex-direction:column;line-height:1.2;min-width:0}.brand__text strong{font-size:var(--text-sm);letter-spacing:-.01em}.brand__text span{font-size:.7rem;color:var(--text-muted);white-space:nowrap}.site-nav{display:flex;align-items:center;gap:var(--space-5)}.site-nav ul{display:flex;align-items:center;gap:var(--space-2);list-style:none;padding:0}.site-nav a{position:relative;display:block;padding:.45rem .75rem;border-radius:var(--radius-pill);font-size:var(--text-sm);font-weight:500;color:var(--text-muted);transition:color var(--transition),background-color var(--transition)}.site-nav a:hover{color:var(--text);background:var(--surface-hover)}.site-nav a.is-active{color:var(--text)}.site-nav a.is-active:after{content:"";position:absolute;left:50%;bottom:2px;width:16px;height:2px;border-radius:2px;background:var(--gradient-brand);transform:translate(-50%)}.menu-toggle{display:none}@media (max-width: 940px){.site-nav{position:fixed;inset:var(--header-h) 0 auto 0;flex-direction:column;align-items:stretch;gap:var(--space-4);padding:var(--space-5) clamp(1.15rem,4vw,2.5rem) var(--space-6);background:color-mix(in srgb,var(--bg) 96%,transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid var(--border);box-shadow:var(--shadow-lg);transform:translateY(-120%);opacity:0;pointer-events:none;transition:transform var(--transition),opacity var(--transition)}.site-nav.is-open{transform:translateY(0);opacity:1;pointer-events:auto}.site-nav ul{flex-direction:column;align-items:stretch;gap:0}.site-nav a{padding:.85rem .5rem;border-radius:var(--radius-sm);font-size:var(--text-lg);border-bottom:1px solid var(--border)}.site-nav a.is-active{color:var(--accent)}.site-nav a.is-active:after{display:none}.site-nav__cta{width:100%}.menu-toggle{display:inline-flex}}@media (max-width: 480px){.brand__text span{display:none}}.hero{position:relative;padding-block:calc(var(--header-h) + clamp(3rem,2rem + 6vw,6rem)) var(--section-y);overflow:hidden;isolation:isolate}.hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-2;background-image:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:radial-gradient(70% 60% at 50% 30%,#000 30%,transparent 100%);mask-image:radial-gradient(70% 60% at 50% 30%,#000 30%,transparent 100%)}.hero__glow{position:absolute;inset:-20% -10% auto -10%;height:120%;z-index:-1;background:var(--glow);pointer-events:none}.hero__inner{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:center;gap:clamp(2rem,1rem + 5vw,5rem)}.hero__title{margin-bottom:var(--space-4)}.hero__title-role{display:block;margin-top:.35rem;font-size:var(--text-2xl);font-weight:700;background:var(--gradient-text);background-size:220% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:gradient-pan 8s ease infinite}.hero__lede{max-width:58ch;font-size:var(--text-lg);color:var(--text-muted)}.hero__lede strong{color:var(--text);font-weight:600}.hero__actions{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-6)}.hero__meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);margin-top:var(--space-6)}.hero__location{display:inline-flex;align-items:center;gap:.4rem;font-size:var(--text-sm);color:var(--text-muted)}.hero__portrait{position:relative;display:flex;flex-direction:column;align-items:center;gap:var(--space-4)}.hero__portrait-frame{position:relative;width:min(360px,78vw);aspect-ratio:1;border-radius:50%;animation:float 7s ease-in-out infinite}.hero__portrait-frame:before{content:"";position:absolute;top:-12%;right:-12%;bottom:-12%;left:-12%;z-index:-1;border-radius:50%;background:radial-gradient(closest-side,color-mix(in srgb,var(--accent) 26%,transparent),transparent 78%);filter:blur(18px);pointer-events:none}.hero__portrait-frame img{width:100%;height:100%;object-fit:cover;border-radius:50%}.hero__portrait-cta{display:inline-flex;align-items:center;gap:.45rem;padding:.5rem 1rem;border-radius:var(--radius-pill);border:1px solid var(--border);background:color-mix(in srgb,var(--surface-solid) 88%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:var(--text-xs);font-weight:600;color:var(--text-muted);transition:color var(--transition),border-color var(--transition),transform var(--transition)}.hero__portrait-cta svg{color:var(--accent)}.hero__portrait-cta:hover{color:var(--text);border-color:var(--accent);transform:translateY(-2px)}.hero__stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin-top:clamp(3rem,2rem + 4vw,5rem);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--border);overflow:hidden}.hero__scroll{position:absolute;left:50%;bottom:1.25rem;display:grid;place-items:center;width:38px;height:38px;border-radius:var(--radius-pill);border:1px solid var(--border);color:var(--text-muted);transform:translate(-50%);animation:nudge 2.4s ease-in-out infinite}.hero__scroll:hover{color:var(--accent);border-color:var(--accent)}.availability-badge{display:inline-flex;align-items:center;gap:.55rem;margin-bottom:var(--space-5);padding:.4rem .9rem .4rem .7rem;border-radius:var(--radius-pill);border:1px solid color-mix(in srgb,var(--success) 40%,transparent);background:color-mix(in srgb,var(--success) 10%,transparent);color:var(--success);font-size:var(--text-xs);font-weight:600}.availability-badge__dot{position:relative;width:8px;height:8px;border-radius:50%;background:currentColor}.availability-badge__dot:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:currentColor;animation:ping 2s cubic-bezier(0,0,.2,1) infinite}.stat{display:flex;flex-direction:column;gap:.15rem;padding:clamp(1rem,.6rem + 1.4vw,1.6rem);background:var(--bg)}.stat__value{font-size:var(--text-2xl);font-weight:700;letter-spacing:-.03em;font-variant-numeric:tabular-nums;background:var(--gradient-text);background-size:200% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.stat__label{font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em}@media (max-width: 940px){.hero__inner{grid-template-columns:1fr}.hero__portrait-frame{width:min(300px,62vw)}.hero__stats{grid-template-columns:repeat(2,minmax(0,1fr))}.hero__scroll{display:none}}.career-rail{margin-bottom:clamp(2.5rem,2rem + 2vw,4rem)}.career-rail ol{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--space-2);list-style:none;padding:0;margin:0;counter-reset:chapter}.career-rail__step{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;width:100%;height:100%;padding:var(--space-4) var(--space-3) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);text-align:left;transition:border-color var(--transition),background-color var(--transition),transform var(--transition)}.career-rail__step:after{content:"";position:absolute;top:calc(var(--space-4) + 16px);right:calc(-1 * var(--space-2) - 1px);width:var(--space-2);height:1px;background:var(--border)}.career-rail__step:hover{border-color:var(--border-strong);transform:translateY(-2px)}.career-rail__step.is-active{border-color:var(--accent);background:var(--accent-soft)}.career-rail__step.is-active .career-rail__dot{background:var(--gradient-brand);border-color:transparent;color:#04101f}.career-rail__step.is-active .career-rail__chapter{color:var(--text)}li:last-child .career-rail__step:after{display:none}.career-rail__dot{display:grid;place-items:center;width:32px;height:32px;border-radius:var(--radius-pill);border:1px solid var(--border-strong);background:var(--bg);color:var(--text-muted);transition:background var(--transition),color var(--transition)}.career-rail__period{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}.career-rail__chapter{font-size:var(--text-sm);font-weight:600;line-height:1.3;color:var(--text-muted)}.timeline{position:relative}.timeline__spine{position:absolute;left:50%;top:12px;bottom:12px;width:2px;border-radius:2px;background:var(--border);transform:translate(-50%);overflow:hidden}.timeline__spine-fill{display:block;width:100%;height:calc(var(--timeline-progress, 0) * 100%);background:linear-gradient(var(--accent),var(--cyan-400));transition:height .12s linear}.timeline__list{display:flex;flex-direction:column;gap:clamp(1.5rem,1rem + 2vw,2.75rem);list-style:none;padding:0;margin:0}.timeline__item{display:grid;grid-template-columns:minmax(0,1fr) 64px minmax(0,1fr);align-items:start}.timeline__marker{grid-column:2;grid-row:1;display:grid;place-items:center;padding-top:10px}.timeline__dot{display:grid;place-items:center;width:40px;height:40px;border-radius:var(--radius-pill);border:1px solid var(--border-strong);background:var(--bg);color:var(--text-muted);transition:border-color var(--transition),color var(--transition),box-shadow var(--transition),background var(--transition)}.timeline__item.is-active .timeline__dot{border-color:transparent;background:var(--gradient-brand);color:#04101f;box-shadow:0 0 0 5px var(--accent-soft)}.timeline__item.current .timeline__dot{animation:pulse-ring 2.6s ease-out infinite}.timeline__card{position:relative;grid-row:1;padding:clamp(1.15rem,.8rem + 1.2vw,1.75rem);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:border-color var(--transition),transform var(--transition),box-shadow var(--transition)}.timeline__card h3{margin-bottom:.35rem}.timeline__card:hover{border-color:var(--border-strong);transform:translateY(-2px);box-shadow:var(--shadow-md)}.timeline__item.is-active .timeline__card{border-color:color-mix(in srgb,var(--accent) 45%,transparent)}.timeline__item.is-left .timeline__card{grid-column:1;text-align:right}.timeline__item.is-right .timeline__card{grid-column:3}.timeline__card:after{content:"";position:absolute;top:30px;width:24px;height:1px;background:var(--border)}.timeline__item.is-left .timeline__card:after{right:-24px}.timeline__item.is-right .timeline__card:after{left:-24px}.timeline__item.is-left .timeline__meta,.timeline__item.is-left .tag-list,.timeline__item.is-left .timeline__company{justify-content:flex-end}.timeline__item.is-left .disclosure{flex-direction:row-reverse}.timeline__item.is-left .timeline__highlights li{padding-left:0;padding-right:1.4rem}.timeline__item.is-left .timeline__highlights li:before{left:auto;right:0}.timeline__chapter{margin-bottom:.6rem;font-size:var(--text-xs);font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}.timeline__meta{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;margin-bottom:.5rem}.timeline__range{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted)}.timeline__duration{padding:.1rem .5rem;border-radius:var(--radius-sm);background:var(--surface-hover);border:1px solid var(--border);font-size:.7rem;color:var(--text-subtle)}.timeline__company{display:inline-flex;align-items:center;gap:.4rem;margin-bottom:var(--space-3);font-size:var(--text-sm);font-weight:600;color:var(--text-muted);width:100%}.timeline__description{margin-bottom:var(--space-3);color:var(--text-muted)}.timeline__stack{margin-bottom:var(--space-3)}.timeline__highlights{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .32s var(--ease-out),opacity .22s var(--ease-out)}.timeline__highlights.is-open{grid-template-rows:1fr;opacity:1;margin-top:var(--space-3)}.timeline__highlights>ul{min-height:0;overflow:hidden;margin:0;padding:0;list-style:none}.timeline__highlights li{position:relative;padding-left:1.4rem;font-size:var(--text-sm);color:var(--text-muted);text-align:left}.timeline__highlights li+li{margin-top:.45rem}.timeline__highlights li:before{content:"";position:absolute;left:0;top:.62em;width:6px;height:6px;border-radius:50%;background:var(--accent);opacity:.75}@media (max-width: 1000px){.career-rail ol{grid-auto-flow:column;grid-auto-columns:minmax(190px,1fr);grid-template-columns:none;overflow-x:auto;padding-bottom:var(--space-2);scrollbar-width:thin;scroll-snap-type:x mandatory}.career-rail li{scroll-snap-align:start}}@media (max-width: 900px){.timeline__spine{left:20px;transform:none}.timeline__item{grid-template-columns:42px minmax(0,1fr);gap:var(--space-3)}.timeline__marker{grid-column:1;padding-top:6px}.timeline__dot{width:34px;height:34px}.timeline__item.is-left .timeline__card,.timeline__item.is-right .timeline__card{grid-column:2;text-align:left}.timeline__item.is-left .timeline__meta,.timeline__item.is-left .tag-list,.timeline__item.is-left .timeline__company{justify-content:flex-start}.timeline__item.is-left .disclosure{flex-direction:row}.timeline__item.is-left .timeline__highlights li{padding-left:1.4rem;padding-right:0}.timeline__item.is-left .timeline__highlights li:before{left:0;right:auto}.timeline__card:after{display:none}}.filter-bar{margin-bottom:var(--space-6)}.filter-bar__inner{display:flex;flex-wrap:wrap;gap:var(--space-2)}.skills__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:var(--space-4)}.skill-card{display:flex;flex-direction:column;gap:var(--space-4);padding:clamp(1.25rem,.9rem + 1.2vw,1.85rem);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:border-color var(--transition),transform var(--transition),box-shadow var(--transition)}.skill-card:hover{border-color:var(--border-strong);transform:translateY(-3px);box-shadow:var(--shadow-md)}.skill-card__head{display:flex;align-items:flex-start;gap:var(--space-3)}.skill-card__head h3{font-size:var(--text-lg);margin-bottom:.25rem}.skill-card__head p{font-size:var(--text-sm);color:var(--text-muted)}.skill-card__icon{display:grid;place-items:center;flex-shrink:0;width:42px;height:42px;border-radius:var(--radius-md);background:var(--accent-soft);color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 28%,transparent)}.projects__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));gap:var(--space-5)}.project-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:border-color var(--transition),transform var(--transition),box-shadow var(--transition)}.project-card:hover{border-color:var(--border-strong);transform:translateY(-4px);box-shadow:var(--shadow-md)}@media (min-width: 1000px){.project-card--featured{grid-column:span 2;flex-direction:row}.project-card--featured .project-card__media{width:46%;aspect-ratio:auto;border-bottom:none;border-right:1px solid var(--border)}.project-card--featured .project-card__body{flex:1}}.project-card__media{position:relative;aspect-ratio:16/9;overflow:hidden;border-bottom:1px solid var(--border);background:var(--bg-alt)}.project-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease-out)}.project-card:hover .project-card__media img{transform:scale(1.045)}.project-card__body{display:flex;flex-direction:column;gap:var(--space-3);padding:clamp(1.25rem,.9rem + 1.2vw,1.85rem)}.project-card__meta{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.project-card__role{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}.project-card h3{font-size:var(--text-xl)}.project-card__summary{font-size:var(--text-base);font-weight:500;color:var(--text)}.project-card__description{font-size:var(--text-sm);color:var(--text-muted)}.project-card__links{display:flex;flex-wrap:wrap;gap:var(--space-4);margin-top:auto;padding-top:var(--space-2)}.credentials__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:var(--space-4);align-items:start}.credential-panel{padding:clamp(1.25rem,.9rem + 1.2vw,1.85rem);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:border-color var(--transition),transform var(--transition)}.credential-panel:hover{border-color:var(--border-strong);transform:translateY(-3px)}.credential-panel__title{display:flex;align-items:center;gap:.55rem;margin-bottom:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--border);font-size:var(--text-sm);font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted)}.credential-panel__title svg{color:var(--accent)}.credential-list{display:flex;flex-direction:column;gap:var(--space-4);list-style:none;padding:0;margin:0}.credential-list>li+li{padding-top:var(--space-4);border-top:1px dashed var(--border)}.credential-list h4{font-size:var(--text-base);margin-bottom:.2rem}.credential-list__org{font-size:var(--text-sm);font-weight:600;color:var(--accent)}.credential-list__meta{margin-top:.25rem;font-size:var(--text-sm);color:var(--text-muted)}.credential-list .link-arrow{margin-top:var(--space-2)}.contact__grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(1.5rem,1rem + 3vw,3.5rem);align-items:start}.contact__aside{display:flex;flex-direction:column;gap:var(--space-5)}.contact-details{display:flex;flex-direction:column;gap:var(--space-4);list-style:none;padding:0;margin:0}.contact-details>li{display:flex;align-items:flex-start;gap:var(--space-3)}.contact-details__icon{display:grid;place-items:center;flex-shrink:0;width:40px;height:40px;border-radius:var(--radius-md);background:var(--accent-soft);color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 28%,transparent)}.contact-details h3{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.1em;color:var(--text-subtle);margin-bottom:.15rem}.contact-details a{font-weight:500;transition:color var(--transition)}.contact-details a:hover{color:var(--accent)}.contact-details p{font-weight:500}.copy-btn{display:inline-flex;align-items:center;gap:.3rem;margin-left:var(--space-3);padding:.15rem .5rem;border-radius:var(--radius-sm);border:1px solid var(--border);font-size:.7rem;font-weight:600;color:var(--text-muted);transition:color var(--transition),border-color var(--transition)}.copy-btn:hover{color:var(--accent);border-color:var(--accent)}.contact__cta-card{padding:var(--space-5);border-radius:var(--radius-lg);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent);background:linear-gradient(150deg,var(--accent-soft),transparent 70%),var(--surface)}.contact__cta-card h3{font-size:var(--text-lg);margin-bottom:.4rem}.contact__cta-card p{font-size:var(--text-sm);color:var(--text-muted);margin-bottom:var(--space-4)}.contact__form-wrap{padding:clamp(1.35rem,1rem + 1.5vw,2.25rem);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow-md)}.contact-form{display:flex;flex-direction:column;gap:var(--space-4)}.contact-form .btn{align-self:flex-start}@media (max-width: 900px){.contact__grid{grid-template-columns:1fr}.contact-form .btn{align-self:stretch}}.site-footer{padding-block:var(--space-7) var(--space-5);border-top:1px solid var(--border);background:var(--bg-alt)}.site-footer__top{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(2,minmax(0,.8fr));gap:var(--space-6);padding-bottom:var(--space-6)}.site-footer h2{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.12em;color:var(--text-subtle);margin-bottom:var(--space-3)}.site-footer__name{font-size:var(--text-lg);font-weight:700;letter-spacing:-.02em}.site-footer__tagline{max-width:42ch;margin-top:.35rem;font-size:var(--text-sm);color:var(--text-muted)}.site-footer__location{margin-top:var(--space-3);font-size:var(--text-xs);color:var(--text-subtle)}.site-footer__nav ul{display:flex;flex-direction:column;gap:.4rem;list-style:none;padding:0}.site-footer__nav a{font-size:var(--text-sm);color:var(--text-muted);transition:color var(--transition)}.site-footer__nav a:hover{color:var(--accent)}.site-footer__connect{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-3)}.site-footer__email{font-size:var(--text-sm);color:var(--text-muted);transition:color var(--transition)}.site-footer__email:hover{color:var(--accent)}.site-footer__bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--border);font-size:var(--text-xs);color:var(--text-subtle)}@media (max-width: 800px){.site-footer__top{grid-template-columns:1fr;gap:var(--space-5)}}.chat-launcher{position:fixed;right:clamp(1rem,3vw,2rem);bottom:clamp(1rem,3vw,2rem);z-index:120;display:inline-flex;align-items:center;gap:.55rem;padding:.8rem 1.25rem;border-radius:var(--radius-pill);background:var(--gradient-brand);color:#04101f;font-weight:700;font-size:var(--text-sm);box-shadow:0 14px 40px -12px #4f8cffe6;transition:transform var(--transition),box-shadow var(--transition)}.chat-launcher:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;box-shadow:0 0 #4f8cff8c;animation:pulse-ring 3s ease-out infinite;pointer-events:none}.chat-launcher:hover{transform:translateY(-3px)}.chat-launcher.is-open{background:var(--surface-solid);color:var(--text);border:1px solid var(--border-strong);box-shadow:var(--shadow-md)}.chat-launcher.is-open:after{display:none}.chat-panel{position:fixed;right:clamp(1rem,3vw,2rem);bottom:calc(clamp(1rem,3vw,2rem) + 62px);z-index:130;display:flex;flex-direction:column;width:min(400px,100vw - 2rem);height:min(620px,100vh - 8rem);border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--surface-solid) 96%,transparent);-webkit-backdrop-filter:blur(20px) saturate(150%);backdrop-filter:blur(20px) saturate(150%);box-shadow:var(--shadow-lg);overflow:hidden;transform-origin:bottom right;animation:panel-in .26s var(--ease-out)}.chat-panel[hidden]{display:none}.chat-panel__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);background:var(--surface)}.chat-panel__identity{display:flex;align-items:center;gap:.7rem}.chat-panel__identity strong{display:block;font-size:var(--text-sm)}.chat-panel__avatar-wrap{position:relative;flex-shrink:0}.chat-panel__avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;border:1px solid var(--border-strong)}.chat-panel__status{position:absolute;right:-1px;bottom:-1px;width:11px;height:11px;border-radius:50%;background:var(--success);border:2px solid var(--surface-solid)}.chat-panel__subtitle{display:inline-flex;align-items:center;gap:.25rem;font-size:.7rem;color:var(--text-muted)}.chat-panel__actions{display:flex;align-items:center;gap:.25rem}.chat-panel__actions button{display:grid;place-items:center;width:32px;height:32px;border-radius:var(--radius-sm);color:var(--text-muted);transition:color var(--transition),background-color var(--transition)}.chat-panel__actions button:hover{color:var(--text);background:var(--surface-hover)}.chat-panel__messages{flex:1;display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);overflow-y:auto;scrollbar-width:thin}.chat-panel__error{padding:.6rem .8rem;border-radius:var(--radius-md);border:1px solid color-mix(in srgb,var(--danger) 45%,transparent);background:color-mix(in srgb,var(--danger) 10%,transparent);color:var(--danger);font-size:var(--text-xs)}.chat-panel__suggestions{display:flex;flex-wrap:wrap;gap:.4rem;padding:0 var(--space-4) var(--space-3)}.chat-panel__suggestions .chip{font-size:.75rem;padding:.35rem .7rem}.chat-panel__form{display:flex;align-items:flex-end;gap:var(--space-2);padding:var(--space-3);border-top:1px solid var(--border);background:var(--surface)}.chat-panel__form textarea{flex:1;max-height:120px;padding:.6rem .85rem;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg);font-size:var(--text-sm);resize:none}.chat-panel__form textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.chat-panel__form button[type=submit]{display:grid;place-items:center;width:40px;height:40px;flex-shrink:0;border-radius:var(--radius-md);background:var(--gradient-brand);color:#04101f;transition:opacity var(--transition),transform var(--transition)}.chat-panel__form button[type=submit]:disabled{opacity:.45;cursor:not-allowed}.chat-panel__form button[type=submit]:not(:disabled):hover{transform:translateY(-1px)}.chat-message{display:flex;align-items:flex-end;gap:.5rem;max-width:92%}.chat-message--user{align-self:flex-end;flex-direction:row-reverse}.chat-message--user .chat-message__bubble{background:var(--gradient-brand);color:#04101f;border-bottom-right-radius:4px;font-weight:500}.chat-message--assistant .chat-message__bubble{background:var(--surface-hover);border:1px solid var(--border);border-bottom-left-radius:4px}.chat-message__avatar{width:28px;height:28px;flex-shrink:0;border-radius:50%;object-fit:cover}.chat-message__bubble{padding:.65rem .9rem;border-radius:var(--radius-md);font-size:var(--text-sm);line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}.chat-message__bubble--typing{display:inline-flex;align-items:center;gap:4px}.chat-message__bubble--typing span{width:6px;height:6px;border-radius:50%;background:var(--text-muted);animation:typing 1.2s ease-in-out infinite}.chat-message__bubble--typing span:nth-child(2){animation-delay:.15s}.chat-message__bubble--typing span:nth-child(3){animation-delay:.3s}.back-to-top{position:fixed;left:clamp(1rem,3vw,2rem);bottom:clamp(1rem,3vw,2rem);z-index:110;display:grid;place-items:center;width:42px;height:42px;border-radius:var(--radius-pill);border:1px solid var(--border);background:color-mix(in srgb,var(--surface-solid) 90%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--text-muted);opacity:0;transform:translateY(12px);pointer-events:none;transition:opacity var(--transition),transform var(--transition),color var(--transition)}.back-to-top.is-visible{opacity:1;transform:none;pointer-events:auto}.back-to-top:hover{color:var(--accent);border-color:var(--accent)}@media (max-width: 520px){.chat-panel{right:.5rem;left:.5rem;width:auto;height:min(70vh,560px)}.chat-launcher__label{display:none}.chat-launcher{padding:.85rem}}
