@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/inter-latin-ext-DO1Apj_S.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/inter-latin-Dx4kXJAl.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/inter-latin-ext-DO1Apj_S.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/inter-latin-Dx4kXJAl.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/inter-latin-ext-DO1Apj_S.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/inter-latin-Dx4kXJAl.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:light;--bg: rgb(249 238 255 / 96%);--fg: #0b0b0b;--muted: #444;--border: rgb(0 0 0 / 12%);--border-strong: rgb(0 0 0 / 18%);--card: rgb(255 255 255 / 72%);--link: #0b57d0;--shadow: 0 1px 0 rgb(0 0 0 / 4%);--darkshadow: 0 10px 30px rgb(90 30 160 / 14%);--radius: 14px;--container: 980px;--header: rgb(240 215 255);--accent: #7c3aed;--accent-strong: #6425d0;--accent-fg: #fff;--accent-soft: rgb(124 58 237 / 10%);--accent-soft-strong: rgb(124 58 237 / 20%);--accent-border: rgb(124 58 237 / 35%);--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 2rem;--space-xl: 3rem;--font-body: ui-sans-serif, system-ui, -apple-system, segoe ui, roboto, arial, sans-serif;--font-heading: "Inter", ui-sans-serif, system-ui, -apple-system, segoe ui, roboto, arial, sans-serif}html[data-theme=dark]{color-scheme:dark;--bg: rgb(22 18 36 / 92%);--fg: rgb(245 244 255 / 92%);--muted: rgb(210 208 230 / 72%);--card: rgb(50 41 76 / 78%);--header: rgb(32 26 50);--border: rgb(255 255 255 / 12%);--header-border: rgb(255 255 255 / 10%);--shadow: 0 1px 0 rgb(0 0 0 / 35%);--darkshadow: 0 10px 30px rgb(0 0 0 / 45%);--link: rgb(165 197 255 / 95%);--accent: #a78bfa;--accent-strong: #c4b5fd;--accent-fg: #1b1330;--accent-soft: rgb(167 139 250 / 14%);--accent-soft-strong: rgb(167 139 250 / 24%);--accent-border: rgb(167 139 250 / 40%)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}*{box-sizing:border-box}html,body{height:100%}body{margin:0;font-family:var(--font-body);background:var(--bg);color:var(--fg);line-height:1.5}a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{font-family:var(--font-heading)}h1,h2,h3,h4,h5,h6,p{margin:0}.container{width:min(var(--container),calc(100% - 2rem));margin:0 auto}.app-shell{min-height:100vh;display:flex;flex-direction:column}.skip-link{position:absolute;left:-999px;top:0;background:var(--fg);color:var(--bg);padding:var(--space-sm) .75rem;border-radius:10px}.skip-link:focus{left:var(--space-md);top:var(--space-md);z-index:999}.app-header{position:sticky;top:0;z-index:10;background:var(--header);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);box-shadow:inset 0 -3px 0 var(--accent-soft-strong)}.header-inner{display:flex;align-items:center;justify-content:space-between;padding:.85rem 0;gap:var(--space-md)}@media(max-width:640px){.header-inner{flex-direction:column;align-items:flex-start;gap:var(--space-sm);padding-bottom:var(--space-md)}.nav{width:100%;justify-content:flex-start}}.brand{display:flex;align-items:center;gap:.75rem}.brand-mark{width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--accent-border);border-radius:12px;background:var(--accent-soft);color:var(--accent);transition:background .2s,color .2s}.brand-mark:hover{background:var(--accent);color:var(--accent-fg);border-color:transparent}.brand-title{font-weight:700;font-family:var(--font-heading)}.brand-subtitle{font-size:.9rem;color:var(--muted)}.nav{display:flex;gap:var(--space-xs);flex-wrap:wrap;justify-content:flex-end}.nav-link{position:relative;padding:.45rem .7rem;border-radius:12px;border:1px solid transparent;color:var(--fg);transition:background .2s,color .2s}.nav-link:hover{background:var(--accent-soft);border-color:var(--accent-border);color:var(--accent-strong);text-decoration:none}.nav-link.active{background:var(--accent-soft);border-color:var(--accent-border);color:var(--accent-strong);font-weight:600}.nav-link.active:after{content:"";position:absolute;left:.7rem;right:.7rem;bottom:-1px;height:2px;border-radius:2px;background:var(--accent)}.nav-link-home{padding:.45rem .7rem;margin-left:-.7rem;border-radius:12px;border:1px solid transparent;background-color:var(--header);color:var(--fg);transition:transform .3s}@media not (max-width:640px){.nav-link-home{margin-left:calc(-1.45rem - 34px)}}.nav-link-home:hover{cursor:pointer;text-decoration:none}.app-main{flex:1;padding-block:var(--space-lg) var(--space-xl)}.stack{display:grid;gap:var(--space-md)}.lead{font-size:1.12rem;line-height:1.6;color:var(--muted);max-width:100ch}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-md)}@media(max-width:900px){.card-grid{grid-template-columns:1fr}}.card{border:1px solid var(--border);border-top:3px solid transparent;background:var(--card);border-radius:var(--radius);padding:var(--space-md);box-shadow:var(--shadow);text-decoration:none;transition:box-shadow .2s,transform .2s,border-color .2s}.card:hover{box-shadow:var(--darkshadow);border-top-color:var(--accent);text-decoration:inherit;transform:translateY(-2px)}.card-home{transition:background-color .2s,box-shadow .2s,border-color .2s,transform .2s}.card-page{background:var(--card);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);box-shadow:0 1px #0000000a,0 8px 30px #00000009;border-color:#00000014}.card-home:hover{background-color:var(--accent-soft);box-shadow:var(--darkshadow);border-top-color:var(--accent);text-decoration:inherit;transform:translateY(-2px)}.card-stack{display:grid;gap:var(--space-lg)}.pill-row{display:flex;gap:var(--space-sm);flex-wrap:wrap;margin-top:var(--space-sm)}.pill{font-size:.85rem;padding:.2rem .6rem;border:1px solid var(--accent-border);border-radius:999px;background:var(--accent-soft);color:var(--accent-strong)}.btn{display:inline-block;padding:.55rem .85rem;border-radius:12px;border:1px solid var(--accent-border);background:var(--accent-soft);color:var(--fg);font-weight:600;transition:background .2s,box-shadow .2s,transform .2s}.btn:hover{background:var(--accent);color:var(--accent-fg);text-decoration:none;box-shadow:var(--darkshadow);transform:translateY(-1px)}.btn-primary{background:var(--accent);color:var(--accent-fg);border-color:transparent}.btn-primary:hover{background:var(--accent-strong);color:var(--accent-fg)}.app-footer{border-top:1px solid var(--border);padding:var(--space-md) 0;color:var(--muted)}.footer-inner{display:flex;justify-content:center;gap:var(--space-md);flex-wrap:wrap}.card-link{display:block;color:inherit;text-decoration:none;cursor:pointer;justify-content:center;align-items:center;text-align:center}.card-link:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.hoverlist{list-style:none;padding:0;margin:0;display:grid;gap:.35rem}.hoverlist-item{margin:0}.hoverlist-btn{width:100%;text-align:left;border:1px solid var(--border-strong);border-left:3px solid var(--border-strong);background:var(--bg);border-radius:12px;padding:.55rem .7rem;cursor:pointer;color:inherit;transition:background .15s,border-color .15s}.hoverlist-btn:hover{background:var(--accent-soft);border-left-color:var(--accent-border)}.hoverlist-btn:focus-visible{outline:3px solid var(--accent-border);outline-offset:3px}.hoverlist-btn.is-active{background:var(--accent-soft);border-color:var(--accent-border);border-left-color:var(--accent)}.detail-card{border-left:3px solid var(--accent);background-color:var(--accent-soft)}.detail-card.is-pinned{border-color:var(--accent)}.detail-card-title{margin-bottom:var(--space-xs);font-size:1.05rem}.detail-card-body{margin:0;color:var(--muted)}.hoverlist-btn.is-pinned{border-color:var(--accent);border-left-color:var(--accent)}.page-title{font-size:var(--space-xl);font-weight:700;letter-spacing:-.015em;line-height:1.15}.page-section-title{display:flex;align-items:center;gap:.55rem;font-size:1.25rem}.page-section-title:before{content:"";width:.6rem;height:.6rem;border-radius:3px;background:var(--accent);flex-shrink:0}.title-lead-header-container{display:grid;gap:var(--space-sm);padding-bottom:var(--space-md);border-bottom:2px solid var(--accent-soft-strong)}.title-lead-header-container>.btn{justify-self:start}.text-muted{color:var(--muted);font-size:.95rem}.theme-toggle{margin-left:var(--space-xs);width:42px;height:42px;border-radius:12px;border:1px solid transparent;background:transparent;display:grid;place-items:center;cursor:pointer;transition:background .2s,border-color .2s}.theme-toggle:hover{background:var(--accent-soft);border-color:var(--accent-border)}.theme-toggle:focus-visible{outline:3px solid var(--accent-border);outline-offset:3px}.theme-toggle-icon{width:18px;height:18px;display:block}.hero{display:grid;gap:var(--space-sm);padding-bottom:var(--space-sm)}.job-role{font-weight:600;color:var(--accent-strong)}.job-dates{margin-top:.15rem}.timeline{display:grid;gap:0;border-left:2px solid var(--accent-soft-strong);margin-left:.5rem;padding-left:var(--space-lg)}.entry-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:.6rem}.entry-logo{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;height:28px;padding:.3rem .5rem;background:#fff;border:1px solid rgb(0 0 0 / 12%);border-radius:8px}.entry-logo img{height:100%;width:auto;display:block;object-fit:contain}.entry-logo-invert img{filter:invert(1)}.timeline-item{position:relative;margin-top:var(--space-lg)}.timeline-item:first-child{margin-top:0}.timeline-item:before{content:"";position:absolute;top:.4rem;left:calc(-1 * var(--space-lg) - 7px);width:12px;height:12px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.timeline-item:first-child:before{background:var(--accent);box-shadow:0 0 0 5px var(--accent-soft-strong)}.timeline-item-minor{margin-top:var(--space-md)}.timeline-item-minor:before{top:50%;left:calc(-1 * var(--space-lg) - 6px);width:8px;height:8px;margin-top:-4px;background:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.timeline-item-minor+.timeline-item-minor{margin-top:var(--space-sm)}.timeline-minor-row{margin:0;padding:.15rem 0;color:var(--muted);font-size:.92rem}.timeline-minor-row .job-role{color:var(--muted);font-weight:600}summary.timeline-minor-row{cursor:pointer;list-style:none;border-radius:8px;padding:.15rem .4rem;margin-left:-.4rem;transition:background .15s,color .15s}summary.timeline-minor-row::-webkit-details-marker{display:none}summary.timeline-minor-row:before{content:"›";display:inline-block;width:.8rem;margin-right:.2rem;color:var(--accent);transition:transform .15s}.timeline-minor-details[open]>summary.timeline-minor-row:before{transform:rotate(90deg)}summary.timeline-minor-row:hover{background:var(--accent-soft);color:var(--fg)}summary.timeline-minor-row:focus-visible{outline:3px solid var(--accent-border);outline-offset:2px}.timeline-minor-body{margin-top:.35rem;padding-left:1.05rem;color:var(--muted);font-size:.92rem;max-width:90ch}.timeline-minor-body p{margin:0}.job-bullets{margin:.5rem 0 0;padding-left:1.15rem;display:grid;gap:.35rem}.timeline-minor-body .job-bullets{margin:0}.job-bullets li{line-height:1.5}.contact-list{list-style:none;margin:var(--space-md) 0 0;padding:0;display:flex;flex-wrap:wrap;gap:var(--space-sm)}.contact-link{display:inline-flex;align-items:center;gap:.5rem;padding:.55rem .9rem;border-radius:999px;border:1px solid var(--accent-border);background:var(--accent-soft);color:var(--fg);font-weight:600;transition:background .2s,color .2s,transform .2s}.contact-link:hover{background:var(--accent);color:var(--accent-fg);text-decoration:none;transform:translateY(-1px)}.contact-link-icon{display:inline-grid;place-items:center;width:1.4rem;height:1.4rem;flex-shrink:0;border-radius:50%;background:var(--bg);color:var(--accent-strong);border:1px solid var(--accent-border);font-size:.7rem;font-weight:700;text-transform:uppercase}.contact-link:hover .contact-link-icon{background:var(--accent-fg);color:var(--accent);border-color:transparent}@media print{.app-header,.app-footer,.theme-toggle,.skip-link{display:none!important}html,body{background:#fff!important;color:#000!important}.card{background:none!important;box-shadow:none!important;border:none!important;border-top:none!important;padding:.4rem 0!important}.timeline{border-left:none!important;padding-left:0!important;margin-left:0!important}.timeline-item:before,.timeline-item-minor:before{display:none!important}details>*:not(summary){display:block!important}summary.timeline-minor-row{cursor:default!important;padding:0!important;margin-left:0!important}summary.timeline-minor-row:before{display:none!important}.job-role,.page-section-title,a{color:#000!important}.pill{background:none!important;border:1px solid #999!important;color:#000!important}}
