@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-latin.woff2) format("woff2");font-weight:400 500;font-style:normal;font-display:swap;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:"Instrument Serif";src:url(/fonts/InstrumentSerif-normal-latin.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap;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:"Instrument Serif";src:url(/fonts/InstrumentSerif-italic-latin.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap;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{--bg: oklch(.145 .004 255);--bg-card: oklch(.205 .006 255);--bg-card-hi: oklch(.25 .008 255);--fg: oklch(.93 .003 255);--fg-dim: oklch(.64 .01 255);--fg-dimmer: oklch(.51 .009 255);--fg-faint: oklch(.39 .008 255);--hot: oklch(.68 .2 45);--led-green: oklch(.72 .17 155);--amber: oklch(.78 .12 75);--f-sans: "Geist", system-ui, -apple-system, sans-serif;--f-mono: "JetBrains Mono", ui-monospace, Menlo, monospace;--f-serif: "Instrument Serif", Georgia, serif;--radius: 10px;--radius-lg: 14px;--gap: 14px}.shell{padding:28px 16px 16px;--accent: oklch(.67 .052 196);--accent-wash: color-mix(in oklch, var(--accent) 14%, transparent);--border: oklch(.28 .007 255);--border-hi: oklch(.34 .009 255);color:var(--fg);font-family:var(--f-sans);font-size:15px;line-height:1.5}.shell a{color:inherit;text-decoration:none}.shell button{cursor:pointer}.shell .c-hero__title{font-family:var(--f-serif);font-weight:400;letter-spacing:-.015em;color:var(--fg)}.shell .c-lab__title{font-family:var(--f-sans);font-weight:700;letter-spacing:-.03em;color:var(--fg)}.shell .c-contact__title{font-family:var(--f-sans);font-weight:500;letter-spacing:-.01em;color:var(--fg)}.kicker{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--fg-dimmer);display:inline-flex;align-items:center;gap:6px}.kicker .sl{color:var(--fg-dim)}.kicker.on-accent{color:color-mix(in srgb,var(--accent) 85%,transparent)}.kicker.on-accent .sl{color:var(--accent)}.bento{display:grid;grid-template-columns:repeat(6,1fr);gap:var(--gap)}.cell{position:relative;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;display:flex;flex-direction:column;transition:border-color .18s,background .18s,transform .18s}a.cell{cursor:pointer}a.cell:hover{border-color:var(--border-hi);background:var(--bg-card-hi);transform:translateY(-2px)}.btn{--btn-corner: 8px;position:relative;display:inline-flex;align-items:center;font-family:var(--f-mono);font-size:12px;letter-spacing:.04em;color:var(--fg);text-decoration:none;clip-path:polygon(var(--btn-corner) 0,100% 0,100% calc(100% - var(--btn-corner)),calc(100% - var(--btn-corner)) 100%,0 100%,0 var(--btn-corner));transition:transform .18s ease;isolation:isolate}.btn__label{display:inline-flex;align-items:center;gap:10px;padding:11px 14px 11px 16px}.btn__prompt{font-weight:500;opacity:.9}.btn__arrow{display:inline-flex;align-items:center;justify-content:center;padding:0 14px;align-self:stretch;font-size:13px;transition:transform .22s ease;border-left:1px solid currentColor}.btn:before{content:"";position:absolute;inset:0;border:1px solid var(--border-hi);clip-path:polygon(var(--btn-corner) 0,100% 0,100% calc(100% - var(--btn-corner)),calc(100% - var(--btn-corner)) 100%,0 100%,0 var(--btn-corner));z-index:-1;transition:background .2s,border-color .2s}.btn:hover{transform:translateY(-1px)}.btn:hover .btn__arrow{transform:translate(3px)}.btn.pri{color:var(--fg)}.btn.pri:before{border-color:color-mix(in srgb,var(--accent) 55%,transparent);background:color-mix(in srgb,var(--accent) 10%,transparent)}.btn.pri .btn__prompt{color:var(--accent)}.btn.pri .btn__arrow{color:var(--accent);border-left-color:color-mix(in srgb,var(--accent) 40%,transparent)}.btn.pri:hover:before{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 20%,transparent)}.btn.sec{color:var(--fg-dim)}.btn.sec:before{border:1px dashed color-mix(in srgb,var(--fg-dim) 50%,transparent);background:transparent}.btn.sec .btn__arrow{border-left-color:color-mix(in srgb,var(--fg-dim) 40%,transparent)}.btn.sec:hover{color:var(--fg)}.btn.sec:hover:before{border-style:solid;border-color:var(--fg-dim);background:color-mix(in srgb,var(--fg) 4%,transparent)}.c-hero{grid-column:span 4;grid-row:span 2;padding:16px 24px;min-height:200px;background:radial-gradient(ellipse 60% 80% at 110% 100%,color-mix(in srgb,white 5%,transparent),transparent 60%),var(--bg-card)}.c-hero__ambient{position:absolute;right:0;top:0;bottom:0;width:42%;pointer-events:none;z-index:0;overflow:hidden;mask-image:linear-gradient(to right,transparent 0%,#000 45%,#000 88%,transparent 100%),linear-gradient(to bottom,transparent 0%,#000 10%,#000 50%,transparent 68%);mask-composite:intersect;-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 45%,#000 88%,transparent 100%),linear-gradient(to bottom,transparent 0%,#000 10%,#000 50%,transparent 68%);-webkit-mask-composite:source-in;font-family:var(--f-mono);font-size:10px;color:var(--fg-dimmer);opacity:.4;line-height:1.7;letter-spacing:.04em;padding:22px 24px}.c-hero__ambient-block{white-space:pre}.c-hero__inner{position:relative;z-index:2;max-width:520px;display:flex;flex-direction:column;gap:8px;height:100%}.c-hero__title{font-family:var(--f-serif);font-weight:400;font-size:clamp(36px,4.2vw,52px);line-height:1;letter-spacing:-.015em;margin:0;color:var(--fg)}.c-hero__title em{font-family:var(--f-serif);font-style:italic;font-weight:400;color:var(--accent);letter-spacing:-.005em}.c-hero__title b{font-family:var(--f-serif);font-weight:400;font-style:normal}.c-hero__line{margin:0;color:var(--fg-dim);font-size:14.5px;max-width:380px}.c-hero__quick{display:flex;gap:12px;margin-top:auto;flex-wrap:wrap}.c-portrait{grid-column:span 2;grid-row:span 2;min-height:180px;padding:0;overflow:hidden;background:radial-gradient(ellipse 75% 55% at 68% 38%,color-mix(in srgb,white 4%,transparent) 0%,transparent 70%),var(--bg-card)}.c-portrait__img-wrap{position:absolute;inset:0}.c-portrait__img-wrap:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,color-mix(in srgb,var(--bg) 30%,transparent) 65%,color-mix(in srgb,var(--bg) 92%,transparent) 100%);z-index:2}.c-portrait__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 15%;filter:contrast(1.03) saturate(.95);mix-blend-mode:luminosity}.c-portrait__sticker{position:absolute;top:14px;left:14px;background:color-mix(in srgb,var(--accent) 18%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:var(--accent);font-family:var(--f-mono);font-size:10.5px;font-weight:500;padding:6px 10px;letter-spacing:.1em;text-transform:uppercase;clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px);border:1px solid color-mix(in srgb,var(--accent) 50%,transparent);z-index:2}.c-portrait__foot{position:absolute;left:16px;right:16px;bottom:14px;z-index:2;color:var(--fg)}.c-portrait__name{font-family:var(--f-sans);font-weight:600;font-size:15px;letter-spacing:-.01em}.c-portrait__loc{font-family:var(--f-mono);font-size:11px;color:var(--fg-dim);letter-spacing:.05em;display:flex;align-items:center;gap:6px;margin-top:2px}.c-portrait__loc:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--led-green);box-shadow:0 0 0 3px color-mix(in srgb,var(--led-green) 25%,transparent)}.c-lab{grid-column:span 3;padding:18px 20px;min-height:160px;background:var(--bg-card)}.c-lab:before{content:"";position:absolute;inset:0;background:url(/homelab-rack.webp) 80% 30% / cover no-repeat;filter:grayscale(1) contrast(1.05) brightness(.6);opacity:.32;mask-image:linear-gradient(to right,transparent 0%,#000 45%,#000 100%);-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 45%,#000 100%);pointer-events:none;z-index:0}.c-lab:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 50% 100% at 100% 50%,color-mix(in srgb,white 4%,transparent),transparent 65%),linear-gradient(90deg,var(--bg-card) 0%,color-mix(in srgb,var(--bg-card) 80%,transparent) 45%,transparent 100%);pointer-events:none;z-index:0}.c-lab>*{position:relative;z-index:1}.c-lab__main{display:flex;flex-direction:column;gap:10px}.c-lab__title{margin:0;font-family:var(--f-sans);font-weight:700;font-size:clamp(24px,2.8vw,34px);line-height:1;letter-spacing:-.03em}.c-lab__desc{color:var(--fg-dim);font-size:13px;max-width:320px;margin:0}.c-lab__stack{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto}.tag{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;padding:4px 9px;border-radius:4px;border:1px solid var(--border-hi);color:var(--fg-dim)}.c-list{grid-column:span 3;padding:18px 20px;gap:10px}.c-list__eyebrow{display:block;font-family:var(--f-mono);font-size:9.5px;font-weight:400;letter-spacing:.16em;text-transform:uppercase;color:color-mix(in srgb,var(--amber) 70%,transparent);margin-bottom:4px}.c-list__title{margin:0;font-family:var(--f-sans);font-size:clamp(18px,2.2vw,22px);font-weight:600;line-height:1.2;letter-spacing:-.03em;color:var(--fg);transition:color .15s}.c-list:hover .c-list__title{color:var(--accent)}.c-list__desc{margin:0;font-size:13px;color:var(--fg-dim);line-height:1.6;line-clamp:3;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.c-list__foot{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:12px;border-top:1px dashed color-mix(in srgb,var(--border) 80%,transparent)}.c-list__date{font-family:var(--f-mono);font-size:10.5px;color:var(--fg-dimmer);letter-spacing:.06em}.c-list__arrow{font-family:var(--f-mono);font-size:11px;color:var(--accent);letter-spacing:.04em;transition:letter-spacing .2s ease}.c-list:hover .c-list__arrow{letter-spacing:.1em}.c-career{grid-column:span 6;padding:16px 20px 18px;gap:14px;overflow:visible;background:radial-gradient(ellipse 22% 120% at 104% 50%,color-mix(in srgb,var(--accent) 8%,transparent),transparent 65%),var(--bg-card)}.c-career__track{display:flex;overflow-x:auto;overflow-y:visible;scrollbar-width:none;--seg-dir: to right}@media(min-width:641px){.c-career__track{overflow:visible}}.c-career__track::-webkit-scrollbar{display:none}.c-career__node{flex:1;min-width:86px;display:flex;flex-direction:column;align-items:center;gap:7px;position:relative}.c-career__year{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.08em;color:var(--fg-dim);text-align:center}.c-career__node--now .c-career__year{color:var(--accent)}.c-career__mid{display:flex;align-items:center;width:100%}.c-career__seg{flex:1;height:1px;background:var(--border-hi)}.c-career__node:first-child .c-career__seg:first-child,.c-career__node:last-child .c-career__seg:last-of-type{visibility:hidden}.c-career__node:first-child .c-career__seg:last-of-type{background:linear-gradient(to right,transparent,var(--border-hi))}.c-career__node--active .c-career__seg{background:color-mix(in srgb,var(--fg-dim) 42%,transparent)}.c-career__node--now .c-career__seg:first-child{background:color-mix(in srgb,var(--accent) 38%,transparent)}.c-career__node:not(.c-career__node--active):not(.c-career__node--now):has(+.c-career__node--active) .c-career__seg:last-of-type{background:linear-gradient(var(--seg-dir),var(--border-hi),color-mix(in srgb,var(--fg-dim) 42%,transparent))}.c-career__node--active:has(+:not(.c-career__node--active):not(.c-career__node--now)) .c-career__seg:last-of-type{background:linear-gradient(var(--seg-dir),color-mix(in srgb,var(--fg-dim) 42%,transparent),var(--border-hi))}.c-career__node--active:has(+.c-career__node--now) .c-career__seg:last-of-type{background:linear-gradient(var(--seg-dir),color-mix(in srgb,var(--fg-dim) 42%,transparent),color-mix(in srgb,var(--accent) 38%,transparent))}.c-career__dot{width:7px;height:7px;border-radius:50%;border:1.5px solid var(--fg-faint);background:var(--bg-card);flex-shrink:0;transition:border-color .15s}.c-career__node--active .c-career__dot{border-color:var(--fg-dim);background:var(--fg-dim)}.c-career__node--now .c-career__dot{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 22%,transparent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 14%,transparent);animation:career-pulse 2.8s ease-in-out infinite}.c-career__label{font-family:var(--f-mono);font-size:10.5px;color:var(--fg-dim);letter-spacing:.03em;text-align:center;line-height:1.3}.c-career__node .c-career__label--link{color:var(--fg-dim)}.c-career__label--link{transition:color .15s}.c-career__label--link:hover{color:var(--accent)}.c-career__node--active .c-career__label,.c-career__node--active .c-career__label--link{color:var(--fg)}.c-career__node--now .c-career__label,.c-career__node--now .c-career__label--link{color:var(--accent)}.c-career__tooltip{display:none;position:absolute;bottom:calc(100% + 12px);left:50%;transform:translate(-50%) translateY(8px);width:260px;background:color-mix(in oklch,var(--bg) 82%,transparent);border:1px solid color-mix(in oklch,var(--accent) 20%,var(--border-hi));border-top:2px solid var(--accent);border-radius:11px;pointer-events:none;opacity:0;z-index:20;box-shadow:0 8px 32px color-mix(in oklch,var(--bg) 70%,transparent),0 2px 8px color-mix(in oklch,var(--bg) 50%,transparent);transition:opacity .2s ease,transform .2s ease}@supports (backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px)){.c-career__tooltip{backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}}.c-career__tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:color-mix(in oklch,var(--accent) 20%,var(--border-hi))}.c-career__tooltip-role{display:flex;align-items:center;gap:5px;padding:10px 13px 5px;font-family:var(--f-mono);font-size:10px;letter-spacing:.11em;text-transform:uppercase;color:var(--accent)}.c-career__tooltip-role:before{content:"//";opacity:.5;font-size:9.5px}.c-career__tooltip-desc{margin:0;padding:0 13px 10px;font-family:var(--f-sans);font-size:12px;line-height:1.6;color:var(--fg)}.c-career__tooltip-tags{display:flex;flex-wrap:wrap;gap:4px;padding:7px 13px 10px;border-top:1px solid color-mix(in oklch,var(--border-hi) 55%,transparent)}.c-career__tooltip-tag{font-family:var(--f-mono);font-size:10px;letter-spacing:.04em;color:var(--fg-dim);background:color-mix(in oklch,var(--bg-card) 55%,transparent);border:1px solid color-mix(in oklch,var(--border-hi) 70%,transparent);border-radius:4px;padding:2px 7px}@media(min-width:641px){.c-career__tooltip{display:block}.c-career__node:first-child .c-career__tooltip{left:0;transform:translate(0) translateY(8px)}.c-career__node:first-child .c-career__tooltip:after{left:20%}.c-career__node:last-child .c-career__tooltip{left:auto;right:0;transform:translate(0) translateY(8px)}.c-career__node:last-child .c-career__tooltip:after{left:80%}.c-career__node:hover .c-career__tooltip{opacity:1;transform:translate(-50%) translateY(0);pointer-events:auto}.c-career__node:first-child:hover .c-career__tooltip{transform:translate(0) translateY(0)}.c-career__node:last-child:hover .c-career__tooltip{transform:translate(0) translateY(0)}}@media(prefers-reduced-motion:reduce){.c-career__tooltip{transition:none}}.c-contact{grid-column:span 6;padding:16px 22px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;background:radial-gradient(ellipse 40% 200% at 0% 50%,color-mix(in srgb,white 3%,transparent),transparent 70%),var(--bg-card)}.c-contact__title{margin:0;font-family:var(--f-sans);font-size:15px;font-weight:500;letter-spacing:-.01em;width:100%}.c-contact__title em{font-family:var(--f-serif);font-style:italic;color:var(--fg-dim);font-weight:400}.c-contact__actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.c-contact__socials{display:flex;gap:8px;align-items:center}.c-contact__social-btn{width:36px;height:36px;border-radius:50%;border:1px solid var(--border-hi);display:inline-flex;align-items:center;justify-content:center;font-family:var(--f-mono);font-size:11px;font-weight:500;color:var(--fg-dim);letter-spacing:.02em;transition:border-color .15s,color .15s}.c-contact__social-btn:hover{border-color:var(--accent);color:var(--accent)}.c-hero__mobile-portrait{display:none;position:absolute;right:0;top:0%;bottom:6%;width:50%;overflow:hidden;pointer-events:none;z-index:1}.c-hero__mobile-portrait img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 18%;filter:contrast(1.04) saturate(.9);mask-image:linear-gradient(to bottom,transparent 0%,#000 12%,#000 55%,transparent 88%),linear-gradient(to right,transparent 0%,color-mix(in srgb,#000 50%,transparent) 18%,#000 40%);mask-composite:intersect;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 12%,#000 55%,transparent 88%),linear-gradient(to right,transparent 0%,color-mix(in srgb,#000 50%,transparent) 18%,#000 40%);-webkit-mask-composite:source-in}@media(max-width:1024px){.c-hero__ambient{display:none}.btn__label{padding:10px 12px 10px 14px}.btn__arrow{padding:0 12px}.c-lab__desc{max-width:none}.c-lab:before{background-position:center center;mask-image:linear-gradient(to bottom,transparent 0%,#000 40%,#000 100%);-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 40%,#000 100%)}.c-lab:after{background:linear-gradient(180deg,var(--bg-card) 0%,color-mix(in srgb,var(--bg-card) 65%,transparent) 45%,transparent 100%)}.c-list__title{font-size:clamp(17px,2.8vw,21px)}}@media(min-width:641px)and (max-width:1024px){.shell{padding:20px 18px}.bento{grid-template-columns:1fr 1fr;gap:12px}.c-hero{grid-column:1 / 2;grid-row:1 / 3;padding:28px 26px 36px;min-height:380px}.c-hero__mobile-portrait{display:none}.c-hero:after{display:none}.c-hero__inner{max-width:none;gap:18px}.c-hero__title{font-size:clamp(30px,4.8vw,46px);margin-top:0}.c-hero__line{font-size:14px;max-width:none;margin-top:auto;padding-top:0;color:var(--fg-dim)}.c-hero__quick{gap:10px;margin-top:20px}.c-portrait{grid-column:2 / 3;grid-row:1 / 3;display:flex;min-height:380px}.c-portrait__img{object-fit:cover;object-position:center 15%;mask-image:linear-gradient(to bottom,transparent 0%,#000 8%,#000 70%,transparent 100%),linear-gradient(to right,transparent 0%,#000 8%,#000 92%,transparent 100%);mask-composite:intersect;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 8%,#000 70%,transparent 100%),linear-gradient(to right,transparent 0%,#000 8%,#000 92%,transparent 100%);-webkit-mask-composite:source-in}.c-lab{grid-column:1 / 2;grid-row:3;padding:18px;min-height:0}.c-lab__title{font-size:clamp(22px,3.5vw,30px)}.c-lab:before{opacity:.22}.c-list{grid-column:2 / 3;grid-row:3;padding:14px 16px}.c-career{grid-column:1 / -1;grid-row:4}.c-contact{grid-column:1 / -1;grid-row:5;padding:14px 22px;gap:10px}.kicker{font-size:10px;letter-spacing:.12em}}@media(max-width:640px){.shell{padding:16px 14px}.bento{grid-template-columns:1fr;gap:10px}.c-hero{grid-column:1 / -1;padding:36px 20px 44px;min-height:420px}.c-hero__inner{gap:20px;max-width:none;position:relative;z-index:3}.c-hero__title{font-size:clamp(28px,8.5vw,38px);margin-top:14px}.c-hero__line{font-size:14px;max-width:none;color:var(--fg);margin-top:auto;padding-top:24px}.c-hero__quick{gap:10px;margin-top:16px}.c-hero__mobile-portrait{display:block;z-index:1;opacity:.42}.c-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(to right,color-mix(in srgb,var(--bg-card) 90%,transparent) 52%,transparent 76%);z-index:2;pointer-events:none}.c-portrait{display:none}.kicker{font-size:10px;letter-spacing:.1em}.c-hero{order:1}.c-lab{order:2}.c-list{order:3}.c-career{order:4}.c-contact{order:5}.c-lab{grid-column:1 / -1;padding:16px 14px;min-height:0}.c-lab__title{font-size:clamp(22px,7vw,28px)}.c-lab:before{opacity:.18}.c-list{grid-column:1 / -1;padding:14px 16px}.c-list__title{font-size:clamp(20px,5.5vw,24px)}.c-contact{grid-column:1 / -1;padding:14px 16px;gap:10px}.c-contact__title{font-size:15px}.c-contact__actions{width:100%;flex-direction:column;align-items:center}.c-contact__actions .btn{width:100%;justify-content:space-between}.c-career{grid-column:1 / -1;padding:14px 16px 18px;background:radial-gradient(ellipse 110% 25% at 50% 104%,color-mix(in srgb,var(--accent) 7%,transparent),transparent 70%),var(--bg-card)}.c-career__track{flex-direction:column;overflow-x:visible;gap:10px;padding-top:2px}.c-career__node{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:10px;min-width:unset;min-height:unset;padding:11px 12px;border:1px solid color-mix(in oklch,var(--border-hi) 65%,transparent);border-radius:14px;background:color-mix(in oklch,var(--bg-card-hi) 55%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.c-career__year{width:auto;text-align:center;flex-shrink:0;align-self:center;font-size:10px;font-weight:600;letter-spacing:.08em;color:var(--fg-dim);border:1px solid color-mix(in oklch,var(--border-hi) 75%,transparent);border-radius:999px;padding:3px 8px;min-width:44px;background:color-mix(in oklch,var(--bg-card) 75%,transparent)}.c-career__mid{display:none}.c-career__label{text-align:left;font-size:12.5px;font-weight:500;align-self:center;flex:1;line-height:1.25;color:var(--fg-dim)}.c-career__label--link{display:block;padding-block:2px}.c-career__node--active{border-color:color-mix(in oklch,var(--accent) 22%,var(--border-hi))}.c-career__node--active .c-career__year{color:var(--fg);border-color:color-mix(in oklch,var(--border-hi) 90%,transparent)}.c-career__node--active .c-career__label,.c-career__node--active .c-career__label--link{color:var(--fg)}.c-career__node--now{border-color:color-mix(in oklch,var(--accent) 50%,transparent);background:color-mix(in oklch,var(--accent) 6%,var(--bg-card-hi))}.c-career__node--now .c-career__year{color:var(--accent);border-color:color-mix(in oklch,var(--accent) 50%,transparent);background:color-mix(in oklch,var(--accent) 12%,transparent)}.c-career__node--now .c-career__label,.c-career__node--now .c-career__label--link{color:var(--accent)}}@media(max-width:380px){.c-hero__title{font-size:34px}.c-hero__quick{flex-direction:column;align-items:stretch}.c-hero__quick .btn{justify-content:space-between}.tag{font-size:9.5px;padding:3px 7px}}@keyframes cell-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.cell{animation:cell-in .55s cubic-bezier(.25,.46,.45,.94) backwards}.c-hero{animation-delay:0ms}.c-portrait{animation-delay:80ms}.c-lab{animation-delay:.15s}.c-list{animation-delay:.2s}.c-career{animation-delay:.28s}.c-contact{animation-delay:.34s}@keyframes ambient-scroll{0%{transform:translateY(0)}to{transform:translateY(-50%)}}.c-hero__ambient-track{animation:ambient-scroll 80s linear infinite}@keyframes cursor-blink{0%,to{opacity:1}50%{opacity:0}}.cursor{color:var(--accent);animation:cursor-blink 1.1s step-end infinite}@keyframes dot-hint{0%,60%,to{box-shadow:0 0 0 0 transparent}30%{box-shadow:0 0 0 4px color-mix(in oklch,var(--accent) 16%,transparent)}}@media(min-width:641px){.c-career__node:has(.c-career__tooltip):not(.c-career__node--now){cursor:help}.c-career__node:has(.c-career__tooltip):not(.c-career__node--now) .c-career__dot{animation:dot-hint 6s ease-in-out infinite}.c-career__node:has(.c-career__tooltip):not(.c-career__node--now):nth-child(2) .c-career__dot{animation-delay:.7s}.c-career__node:has(.c-career__tooltip):not(.c-career__node--now):nth-child(3) .c-career__dot{animation-delay:1.4s}.c-career__node:has(.c-career__tooltip):not(.c-career__node--now):nth-child(4) .c-career__dot{animation-delay:2.1s}.c-career__node:has(.c-career__tooltip):not(.c-career__node--now):nth-child(5) .c-career__dot{animation-delay:2.8s}}@keyframes career-pulse{0%,to{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 14%,transparent)}50%{box-shadow:0 0 0 5px color-mix(in srgb,var(--accent) 5%,transparent)}}@keyframes led-pulse{0%,to{box-shadow:0 0 0 3px color-mix(in srgb,var(--led-green) 25%,transparent);opacity:1}50%{box-shadow:0 0 0 5px color-mix(in srgb,var(--led-green) 8%,transparent);opacity:.65}}.c-portrait__loc:before{animation:led-pulse 2.8s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.cell{animation:none}a.cell:hover{transform:none}.c-hero__ambient-track,.cursor{animation:none}.c-portrait__loc:before{animation:none}.c-career__node--now .c-career__dot{animation:none}.c-career__node:has(.c-career__tooltip) .c-career__dot{animation:none}}
