@font-face{font-family:dela gothic one;src:url(/fonts/dela-gothic-one-latin-400-normal.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:space grotesk;src:url(/fonts/space-grotesk-latin-wght-normal.woff2)format("woff2");font-weight:300 700;font-style:normal;font-display:swap}:root{color-scheme:light;--bg:#A9F6FE;--grid:#86D5DC;--ink:#111015;--paper:#FFFFFF;--lime:#B8FF9F;--pink:#FF9EF8;--yellow:#F0FD71;--lilac:#A6A4F8;--indigo:#726EF7;--blush:#FFC6D9;--line:3px solid var(--ink);--shadow:4px 4px 0 var(--ink);--shadow-hover:6px 6px 0 var(--ink);--r-window:20px;--r-card:12px;--r-pill:999px;--font-display:"Dela Gothic One", "Arial Black", Impact, sans-serif;--font-body:"Space Grotesk", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;--content:1120px;--gutter:16px;--nav-offset:96px;--space-section:clamp(4rem, 1.6rem + 6vw, 6rem)}*,*::before,*::after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{display:flex;flex-direction:column;min-height:100vh;margin:0;font-family:var(--font-body);font-size:1.125rem;line-height:1.6;color:var(--ink);background-color:var(--bg);background-image:linear-gradient(var(--grid) 2px,transparent 2px),linear-gradient(90deg,var(--grid) 2px,transparent 2px);background-size:32px 32px;background-position:-1px -1px}main{flex:1}main:focus,main:focus-visible{outline:none}h1,h2,h3,h4,p,ul,ol,figure{margin:0}h1,h2,h3,h4{line-height:1.2;text-wrap:balance}ul,ol{padding:0;list-style:none}strong{font-weight:700}img,svg{display:block;max-width:100%}img{height:auto}a{color:inherit}button{font:inherit;color:inherit}[hidden]{display:none!important}[id]{scroll-margin-top:var(--nav-offset)}::selection{background:var(--yellow);color:var(--ink)}:focus-visible{outline:3px solid var(--indigo);outline-offset:3px}.window-bar :focus-visible,.card-head :focus-visible{outline-color:var(--ink)}.visually-hidden{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}.skip-link{position:fixed;top:12px;left:var(--gutter);z-index:100;padding:.6rem 1rem;font-weight:700;text-decoration:none;background:var(--yellow);border:var(--line);border-radius:var(--r-card);transform:translateY(-200%)}.skip-link:focus{transform:none}.text-link,.skill-summary a,.experience-company a{font-weight:600;text-decoration:underline;text-decoration-thickness:3px;text-underline-offset:.18em;border-radius:3px}.text-link:hover,.skill-summary a:hover,.experience-company a:hover{background-color:var(--yellow);box-shadow:0 0 0 3px var(--yellow)}.section,.not-found{width:min(100% - 2 * var(--gutter),var(--content));margin-inline:auto}.section{margin-block-start:var(--space-section)}.button,.chip,.social-link,.nav-toggle{color:var(--ink);text-decoration:none;cursor:pointer;background:var(--paper);border:var(--line);border-radius:var(--r-card);box-shadow:var(--shadow)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:.65rem 1.4rem;font-size:1.0625rem;font-weight:700;line-height:1.2}.button--primary{background:var(--yellow)}.button--secondary{background:var(--blush)}.chip{display:inline-flex;align-items:center;min-height:44px;padding:.45rem .95rem;font-size:.9375rem;font-weight:600;line-height:1.3}.chip[aria-pressed=true]{color:var(--paper);background:var(--ink)}.pill{display:inline-block;padding:.1rem .65rem;font-size:.8125rem;font-weight:700;line-height:1.5;white-space:nowrap;background:var(--paper);border:2px solid var(--ink);border-radius:var(--r-pill)}.pill--date{font-size:.875rem;font-variant-numeric:tabular-nums;background:var(--yellow)}.window{background:var(--paper);border:var(--line);border-radius:var(--r-window)}.window-bar{display:flex;align-items:center;gap:16px;min-height:52px;padding:10px 18px;background:var(--lime);border-bottom:var(--line);border-radius:calc(var(--r-window) - 3px)calc(var(--r-window) - 3px)0 0}.window-controls{display:flex;flex:none;gap:12px}.window-title{margin-inline-start:auto;font-size:.9375rem;font-weight:600}.window-body{padding:clamp(20px,4vw,48px)}.site-header{position:sticky;top:0;z-index:50;padding:0 var(--gutter);pointer-events:none}.nav{display:flex;align-items:center;justify-content:space-between;gap:12px;max-width:var(--content);min-height:64px;margin-inline:auto;padding:8px 8px 8px clamp(12px,3vw,20px);pointer-events:auto;background:var(--paper);border:var(--line);border-top:0;border-radius:0 0 var(--r-card)var(--r-card)}.nav-brand{font-family:var(--font-display);font-size:clamp(.875rem,3.75vw + 2px,1.0625rem);line-height:1;text-decoration:none;text-transform:uppercase;white-space:nowrap;font-synthesis:none}.nav-links{display:flex;flex-wrap:wrap;gap:4px}.nav-links a{display:block;padding:.35rem .8rem;font-size:1rem;font-weight:600;line-height:1.4;text-decoration:none;border:3px solid transparent;border-radius:var(--r-card)}.nav-links a:hover{text-decoration:underline;text-decoration-thickness:3px;text-underline-offset:.2em}.nav-links a[aria-current]{background:var(--yellow);border-color:var(--ink)}.nav-toggle{display:none;align-items:center;gap:.5rem;min-height:44px;padding:.35rem .9rem;font-weight:700;background:var(--lime)}.nav-toggle svg{flex:none;width:20px;height:20px}.nav-toggle .icon-close{display:none}@media(min-width:900px){.nav-menu{display:block;position:static;inset:auto;width:auto;height:auto;margin:0;padding:0;overflow:visible;color:inherit;background:0 0;border:0}}@media(max-width:899.98px){.nav-toggle{display:inline-flex}.nav-menu:popover-open{position:fixed;inset:72px var(--gutter)auto;width:auto;max-height:min(60dvh,calc(100dvh - 100px));margin:0;padding:12px;overflow:auto;color:var(--ink);background:var(--paper);border:var(--line);border-radius:var(--r-card)}.nav-menu::backdrop{background:rgb(17 16 21/.35)}.nav:has(.nav-menu:popover-open) .nav-toggle{color:var(--paper);background:var(--ink);transform:translate(4px,4px);box-shadow:none}.nav:has(.nav-menu:popover-open) .icon-open{display:none}.nav:has(.nav-menu:popover-open) .icon-close{display:block}.nav-menu .nav-links{flex-direction:column}.nav-menu .nav-links a{padding:.6rem 1rem;font-size:1.125rem}}@supports not selector(:popover-open){.nav{flex-wrap:wrap}.nav-toggle{display:none!important}}.hero{container-type:inline-size;padding-block:clamp(3rem,7vw,6rem)clamp(3rem,6vw,5rem);overflow-x:clip}.hero-stage{--inset:clamp(var(--gutter), 25cqi - 164px, 80px);--room:max(var(--inset), (100cqi - 1000px) / 2);position:relative;isolation:isolate;width:min(100% - 2 * var(--inset),1e3px);margin-inline:auto}.hero-window{position:relative}.hero-body{display:grid;grid-template-columns:minmax(0,1fr)auto;gap:24px 48px;align-items:start}.hero-text{grid-area:1/1}.hero-avatar{grid-area:1/2;align-self:center;padding:10px;background:var(--pink);border:var(--line);border-radius:50%}.hero-avatar img{width:148px;height:148px;background:var(--paper);border:var(--line);border-radius:50%}.hero-greeting{font-size:clamp(1.125rem,1rem + .5vw,1.375rem);font-weight:500}.hero-name{margin:.3rem 0 1.1rem;font-family:var(--font-display);font-size:clamp(2.5rem,8vw,6rem);font-weight:400;line-height:.95;text-transform:uppercase;letter-spacing:-.01em;font-synthesis:none}.hero-role{font-size:clamp(1.125rem,1rem + .6vw,1.5rem);font-weight:600;line-height:1.35}.hero-rotator{display:flex;align-items:flex-start;gap:.5rem;margin-top:.6rem;font-size:clamp(1.125rem,1rem + .5vw,1.375rem);font-weight:500;line-height:1.4}.hero-prompt{flex:none;width:.9em;height:.9em;margin-top:.25em}.hero-rotator-lines{display:grid}.hero-rotator-lines>*{grid-area:1/1}.hero-rotator-sizer{padding-right:.7em;visibility:hidden}.hero-rotator-text.is-typing::after{content:"";display:inline-block;width:.5em;height:1.05em;margin-left:.12em;vertical-align:-.17em;background:var(--ink)}.hero-actions{display:flex;flex-wrap:wrap;gap:16px;margin-top:2rem}.hero-latest{margin-top:1.5rem}.chip--latest{display:inline-block;max-width:min(100%,34em);text-wrap:pretty;font-weight:500;background:var(--lilac)}.hero-decor{position:absolute;inset:0;pointer-events:none}.decor{position:absolute;z-index:-1;overflow:visible;stroke:var(--ink)}.fill-pink{fill:var(--pink)}.fill-bg{fill:var(--bg)}.coil-edge{fill:none;stroke:var(--ink);stroke-width:20}.coil-band{fill:none;stroke:var(--yellow);stroke-width:14}.decor--sparkle{--out:128px;top:-84px;left:calc(-1 * min(var(--out),var(--room) - 12px));width:200px;height:200px}.decor--burst{--out:128px;top:24%;right:calc(-1 * min(var(--out),var(--room) - 12px));width:180px;height:180px}.decor--coil{--out:78px;right:calc(-1 * min(var(--out),var(--room) - 12px));bottom:-142px;z-index:1;width:230px;height:220px}@media(max-width:1199.98px){.decor--sparkle{--out:96px;top:-64px;width:150px;height:150px}.decor--burst{--out:84px;width:130px;height:130px}.decor--coil{--out:56px;bottom:-112px;width:180px;height:172px}.coil-edge{stroke-width:21.7}}@media(min-width:720px) and (max-width:1023.98px){.decor--sparkle{display:none}.decor--burst{top:-28px;right:-12px;z-index:1;width:92px;height:92px}.hero-window .window-title{margin-inline-end:72px}}@media(max-width:719.98px){.hero-body{grid-template-columns:minmax(0,1fr);row-gap:16px}.hero-avatar{grid-area:1/1;justify-self:start;padding:6px}.hero-text{grid-area:2/1}.hero-avatar img{width:80px;height:80px}.window-title,.decor--sparkle,.decor--coil{display:none}.decor--burst{top:-20px;right:-8px;z-index:1;width:68px;height:68px}}@media(max-width:479.98px){.hero-actions .button{flex:auto}}.section-header{margin-bottom:clamp(1.75rem,3vw,2.75rem)}.section-label{display:inline-block;margin-bottom:1rem;padding:.3rem .8rem;font-size:.9375rem;font-weight:700;line-height:1.3;font-variant-numeric:tabular-nums;background:var(--accent,var(--paper));border:var(--line);border-radius:var(--r-card);transform:rotate(-2deg)}.section-title{font-family:var(--font-display);font-size:clamp(1.75rem,1rem + 4vw,4rem);font-weight:400;line-height:1.05;text-transform:uppercase;font-synthesis:none}.section--about{--accent:var(--lime)}.section--projects{--accent:var(--pink)}.section--skills{--accent:var(--yellow)}.section--experiences{--accent:var(--lilac)}.about-body{display:grid;gap:clamp(2rem,4vw,3.5rem)}.about-role{font-size:clamp(1.25rem,1.1rem + .5vw,1.5rem);font-weight:500;line-height:1.35}.about-summary{max-width:62ch;margin-top:1rem}.social-links{display:flex;flex-wrap:wrap;gap:clamp(8px,2vw,14px);margin-top:2rem}.social-link{display:grid;place-items:center;width:52px;height:52px}.social-links li:nth-child(5n+1) .social-link{background:var(--pink)}.social-links li:nth-child(5n+2) .social-link{background:var(--yellow)}.social-links li:nth-child(5n+3) .social-link{background:var(--lilac)}.social-links li:nth-child(5n+4) .social-link{background:var(--lime)}.social-links li:nth-child(5n+5) .social-link{background:var(--blush)}.icon{width:24px;height:24px;fill:currentColor}.about-badges-title{margin-bottom:1rem;font-size:1.25rem;font-weight:700}.badges{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,112px),1fr));gap:14px}.badge-inner{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.6rem;height:100%;padding:16px 12px;text-align:center;text-decoration:none;background:var(--paper);border:var(--line);border-radius:var(--r-card)}.badge-image{width:80px;height:80px;object-fit:contain}.badge-fallback{display:grid;flex:none;place-items:center;width:80px;height:80px;background:var(--lilac);border:var(--line);border-radius:50%}.badge-fallback svg{width:40px;height:40px;stroke:var(--ink);stroke-width:3;stroke-linejoin:round}.badge-fallback path{fill:var(--pink)}.badge-fallback circle{fill:var(--yellow)}.badge-name{font-size:.875rem;font-weight:600;line-height:1.35}a.badge-inner:hover .badge-name{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:.18em}@media(max-width:599.98px){.badges{grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr))}.badge-inner{flex-direction:row;justify-content:flex-start;gap:12px;padding:12px;text-align:left}.badge-image,.badge-fallback{flex:none;width:56px;height:56px}.badge-fallback svg{width:30px;height:30px}}@media(min-width:900px){.about-body{grid-template-columns:minmax(0,1.15fr)minmax(0,1fr)}.badges{grid-template-columns:repeat(2,minmax(0,1fr))}}.filters{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 24px;margin-bottom:2rem}.filter-chips{display:flex;flex-wrap:wrap;gap:12px}.filter-status{font-size:.9375rem;font-weight:600;font-variant-numeric:tabular-nums}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:24px}.card{position:relative;display:flex;flex-direction:column;background:var(--paper);border:var(--line);border-radius:var(--r-card);box-shadow:var(--shadow)}.card--speaker{--role:var(--pink)}.card--author{--role:var(--yellow)}.card-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 12px;padding:10px 16px;background:var(--role,var(--lilac));border-bottom:var(--line);border-radius:calc(var(--r-card) - 3px)calc(var(--r-card) - 3px)0 0}.card-timeline{font-size:.875rem;font-weight:700;font-variant-numeric:tabular-nums}.card-body{display:flex;flex:1;flex-direction:column;gap:.6rem;padding:18px 16px}.card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.card-title{font-size:1.1875rem;font-weight:700;line-height:1.3;text-wrap:pretty}.card-link{text-decoration:none}.card-link::after{content:"";position:absolute;inset:-3px;border-radius:var(--r-card)}.card-link:focus-visible{outline:none}.card-link:focus-visible::after{outline:3px solid var(--indigo);outline-offset:3px}.card-logo{flex:none;width:36px;height:36px}.card-summary{font-size:1rem;line-height:1.5}.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto;padding-top:.4rem}.skills{display:grid;grid-template-columns:minmax(0,1fr);gap:24px}@media(min-width:720px){.skills{grid-template-columns:repeat(2,minmax(0,1fr))}}.skill{display:flex;flex-direction:column;gap:.75rem;padding:24px;background:var(--paper);border:var(--line);border-radius:var(--r-card)}.skill[data-accent=lime]{--accent:var(--lime)}.skill[data-accent=pink]{--accent:var(--pink)}.skill[data-accent=yellow]{--accent:var(--yellow)}.skill[data-accent=lilac]{--accent:var(--lilac)}.skill[data-accent=blush]{--accent:var(--blush)}.skill-icon{display:grid;place-items:center;width:60px;height:60px;margin-bottom:.25rem;background:var(--accent);border:var(--line);border-radius:50%}.skill-logo{width:32px;height:32px}.skill-name{font-size:1.3125rem;font-weight:700;line-height:1.25}.skill-summary{font-size:1.0625rem}.timeline{position:relative;display:grid;gap:32px;padding-left:48px}.timeline::before{content:"";position:absolute;top:0;bottom:0;left:12px;width:4px;background:var(--ink)}.timeline-item{position:relative}.timeline-item::before{content:"";position:absolute;top:13px;left:-48px;width:28px;height:28px;background:var(--paper);border:var(--line)}.timeline-item--current::before{background:var(--yellow)}.experience-bar{flex-wrap:wrap;justify-content:space-between;gap:4px 16px;padding:10px 20px;background:var(--lilac)}.experience-company{font-size:1.25rem;font-weight:700}.experience-location{font-size:.9375rem;font-weight:600}.experience-body{padding:clamp(20px,3vw,32px)}.experience-overview{max-width:70ch;margin-bottom:1.75rem}.positions{display:grid;gap:2rem}.position-title{margin:.65rem 0 .5rem;font-size:1.1875rem;font-weight:700}.responsibilities{display:grid;gap:.35rem;max-width:70ch}.responsibilities li{position:relative;padding-left:1.4rem}.responsibilities li::before{content:"";position:absolute;top:.6em;left:.15rem;width:.5rem;height:.5rem;background:var(--ink)}@media(max-width:599.98px){.timeline{padding-left:24px}.timeline::before{left:6px}.timeline-item::before{top:18px;left:-24px;width:16px;height:16px}.experience-body{padding:16px}.responsibilities li{padding-left:1.1rem}}.site-footer{margin-top:var(--space-section);color:var(--paper);background:var(--ink);border-top:var(--line)}.footer-inner{width:min(100% - 2 * var(--gutter),var(--content));margin-inline:auto;padding-block:clamp(3rem,6vw,4.5rem)2rem}.footer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:2rem 2.5rem}.footer-title{margin-bottom:.9rem;font-size:1rem;font-weight:700;color:var(--yellow)}.footer-links{display:grid;gap:.35rem}.site-footer a{color:var(--paper);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:.2em}.site-footer a:hover{color:var(--yellow)}.footer-email{font-weight:600;overflow-wrap:anywhere}.footer-text{max-width:40ch;font-size:1rem}.footer-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem 1.5rem;margin-top:3rem;padding-top:1.5rem;font-size:.9375rem;border-top:2px solid rgb(255 255 255/.25)}@media(max-width:899.98px){.footer-links{gap:0}.footer-links a{display:inline-flex;align-items:center;min-height:44px}}.not-found{max-width:760px;margin-block-start:clamp(3rem,8vw,6rem)}.not-found-window .window-bar{background:var(--pink)}.not-found-code{font-family:var(--font-display);font-size:clamp(5rem,22vw,11rem);font-weight:400;line-height:.9;font-synthesis:none}.not-found-text{max-width:40ch;margin:1.25rem 0 2rem;font-size:1.25rem}@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}.button,.chip,.social-link,.nav-toggle,.card{transition:transform .12s ease-out,box-shadow .12s ease-out}.decor{animation:float 7s ease-in-out infinite alternate}.decor--burst{animation-duration:9s;animation-delay:-3s}.decor--coil{animation-duration:8s;animation-delay:-5s}.hero-rotator-text.is-typing::after{animation:blink 1s steps(1)infinite}}@media(hover:hover){.button:hover,.chip:hover:not([aria-pressed=true]),.social-link:hover,.nav-toggle:hover,.card:hover{transform:var(--lift,translate(-2px,-2px));box-shadow:var(--shadow-hover)}}@media(prefers-reduced-motion:reduce){:root{--lift:none}}.button:active,.chip:active,.social-link:active,.nav-toggle:active,.card:active,.chip[aria-pressed=true]{transform:translate(4px,4px);box-shadow:none}@keyframes float{to{translate:0 -14px}}@keyframes blink{50%{opacity:0}}