*{margin:0;padding:0;box-sizing:border-box}:root{--bg: #0a0a0b;--surface: #131316;--border: #232328;--text: #fafafa;--text-rgb: 250, 250, 250;--text-muted: #8b8b95;--text-muted-rgb: 139, 139, 149;--accent: #ff5a1f;--accent-rgb: 255, 90, 31;--font-sans: "Bricolage Grotesque", system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", "Menlo", monospace}html{scroll-behavior:smooth}body{font-family:var(--font-sans);background:var(--bg);color:var(--text);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;overflow-x:hidden;cursor:auto}.skip-link{position:absolute;left:12px;top:12px;padding:10px 12px;background:rgba(var(--accent-rgb),.12);border:1px solid rgba(var(--accent-rgb),.35);color:var(--text);border-radius:8px;transform:translateY(-160%);transition:transform .18s ease;z-index:10000}.skip-link:focus{transform:translateY(0)}body.has-custom-cursor,body.has-custom-cursor *{cursor:none!important}.cursor{position:fixed;width:9px;height:9px;background:var(--accent);border-radius:50%;pointer-events:none;z-index:9999;opacity:0;will-change:transform;transform:translate3d(-50%,-50%,0);transition:opacity .15s ease-out,width .2s cubic-bezier(.22,1,.36,1),height .2s cubic-bezier(.22,1,.36,1),background .2s ease}.cursor.is-visible{opacity:1}.cursor.hovering{width:28px;height:28px;background:rgba(var(--accent-rgb),.18)}@media(prefers-reduced-motion:reduce){.cursor{transition:opacity .15s ease-out}}a{color:inherit;text-decoration:none}::selection{background:var(--accent);color:var(--bg)}@keyframes riseIn{0%{opacity:0;transform:translateY(18px);filter:blur(8px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}.fade-in{opacity:0;animation:riseIn .9s cubic-bezier(.16,1,.3,1) forwards}.fade-in-1{animation-delay:.05s}.fade-in-2{animation-delay:.2s}.fade-in-3{animation-delay:.34s}.fade-in-4{animation-delay:.48s}@media(prefers-reduced-motion:reduce){.fade-in{animation:none;opacity:1}}.page{min-height:100vh;max-width:660px;margin:0 auto;padding:clamp(3.5rem,12vh,7rem) clamp(1.5rem,5vw,2rem) clamp(3rem,8vh,5rem);position:relative}.header{margin-bottom:clamp(4rem,11vh,7rem)}.name{position:relative;isolation:isolate;font-size:clamp(2.75rem,8vw,4.75rem);font-weight:800;letter-spacing:-.03em;line-height:1.1;color:var(--text);text-wrap:balance}@property --slick-a{syntax: "<angle>"; initial-value: 0deg; inherits: false;}@property --slick-b{syntax: "<angle>"; initial-value: 0deg; inherits: false;}.name-slick{position:absolute;inset:0;pointer-events:none;isolation:isolate;--lens: 150px;-webkit-mask-image:radial-gradient(circle at var(--mx, 50%) var(--my, 50%),#000 0,#000 calc(var(--lens) * .34),transparent var(--lens));mask-image:radial-gradient(circle at var(--mx, 50%) var(--my, 50%),#000 0,#000 calc(var(--lens) * .34),transparent var(--lens))}.name-slick:before,.name-slick:after{content:attr(data-text);position:absolute;inset:0;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;will-change:opacity;opacity:0;transition:opacity .3s ease}.name-slick:before{background-image:conic-gradient(from var(--slick-a) at 38% 42%,oklch(.66 .23 40),oklch(.76 .18 72),oklch(.67 .22 18),oklch(.62 .2 350),oklch(.61 .16 296),oklch(.69 .15 205),oklch(.74 .2 55),oklch(.66 .23 40))}.name-slick:after{background-image:conic-gradient(from var(--slick-b) at 66% 60%,oklch(.76 .18 50),oklch(.83 .15 86),oklch(.71 .19 24),oklch(.69 .17 354),oklch(.8 .16 60),oklch(.76 .18 50));mix-blend-mode:screen}.name.is-lit .name-slick{--lens: 999px}.name.is-lit .name-slick:before{animation:swirlA 5.2s linear .15s,slickResolve 3.3s cubic-bezier(.4,0,.2,1) .15s forwards}.name.is-lit .name-slick:after{animation:swirlB 6.8s linear .25s,slickResolveSoft 3.5s cubic-bezier(.4,0,.2,1) .25s forwards}.name.is-hovering .name-slick:before{opacity:1;animation:swirlA 9s linear infinite}.name.is-hovering .name-slick:after{opacity:.9;animation:swirlB 12s linear infinite}@keyframes swirlA{to{--slick-a: 360deg}}@keyframes swirlB{to{--slick-b: -360deg}}@keyframes slickResolve{0%{opacity:0}12%{opacity:1}72%{opacity:1}to{opacity:0}}@keyframes slickResolveSoft{0%{opacity:0}16%{opacity:.55}68%{opacity:.55}to{opacity:0}}@media(prefers-reduced-motion:reduce){.name-slick{display:none}}.intro{margin-top:1.5rem;font-size:clamp(1.15rem,2.4vw,1.35rem);color:var(--text);max-width:40ch;line-height:1.55;text-wrap:pretty}.section{margin-bottom:clamp(3.5rem,9vh,5.5rem)}.section:last-of-type{margin-bottom:0}.section-label{font-family:var(--font-mono);font-size:.75rem;font-weight:500;letter-spacing:.02em;color:var(--text-muted);margin-bottom:1.75rem;display:flex;align-items:center;gap:.625rem}.section-label:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent);flex:none}.lead{font-size:clamp(1.2rem,2.6vw,1.45rem);font-weight:500;line-height:1.45;letter-spacing:-.01em;color:var(--text);max-width:38ch;text-wrap:pretty}.lead-link{color:var(--accent);white-space:nowrap;border-bottom:1px solid rgba(var(--accent-rgb),.35);transition:border-color .25s ease}.lead-link:hover{border-color:var(--accent)}.lead-link:focus-visible{outline:2px solid rgba(var(--accent-rgb),.6);outline-offset:4px;border-radius:3px}.roles{list-style:none}.role{padding:1.5rem 0;border-top:1px solid var(--border);transition:border-color .3s ease}.role-header{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:.5rem;margin-bottom:.2rem}.role-title{font-size:1.05rem;font-weight:600;color:var(--text);transition:color .25s ease}.role:hover .role-title{color:var(--accent)}.role-date{font-family:var(--font-mono);font-size:.78rem;color:var(--text-muted)}.role-company{font-size:.95rem;color:var(--text-muted);margin-bottom:.875rem}.role-stack{list-style:none;display:flex;flex-wrap:wrap;gap:.5rem}.role-stack li{font-family:var(--font-mono);font-size:.72rem;color:var(--text-muted);padding:.25rem .55rem;border:1px solid var(--border);border-radius:6px;transition:border-color .25s ease,color .25s ease}.role:hover .role-stack li{border-color:rgba(var(--text-rgb),.16);color:rgba(var(--text-rgb),.9)}.footer{margin-top:clamp(4rem,11vh,7rem);padding-top:clamp(2.5rem,5vh,3.5rem);border-top:1px solid var(--border)}.footer-cta{font-size:clamp(1.6rem,4.5vw,2.4rem);font-weight:700;letter-spacing:-.02em;line-height:1.1;color:var(--text);text-wrap:balance;max-width:18ch}.footer-links{display:flex;gap:1.5rem;margin-top:1.75rem}.link{font-size:.95rem;color:var(--text-muted);position:relative;padding-bottom:2px;transition:color .2s ease}.link:after{content:"";position:absolute;left:0;bottom:0;width:0;height:1px;background:var(--accent);transition:width .28s cubic-bezier(.16,1,.3,1)}.link:hover{color:var(--text)}.link:hover:after{width:100%}.link:focus-visible{outline:2px solid rgba(var(--accent-rgb),.6);outline-offset:4px;border-radius:4px}.footer-meta{margin-top:2.75rem;display:flex;gap:.6rem;flex-wrap:wrap;align-items:center;font-family:var(--font-mono);font-size:.75rem;color:var(--text-muted)}.footer-sep{opacity:.5}@media(prefers-reduced-motion:reduce){.lead-link,.role,.role-title,.role-stack li,.link,.link:after{transition:none}}@media(hover:none)and (pointer:coarse){.role:hover .role-title{color:var(--text)}.link:hover{color:var(--text-muted)}.link:hover:after{width:0}.link:active{color:var(--text)}}@media(max-width:600px){.header{margin-bottom:3.5rem}.role-header{flex-direction:column;align-items:flex-start;gap:.2rem}.cursor{display:none}body{cursor:auto}body.has-custom-cursor,body.has-custom-cursor *{cursor:auto!important}a,button{cursor:pointer}}
