:root{--background:#050505;--surface:#0d0d0f;--surface-raised:#151518;--border:#27272a;--border-strong:#52525b;--text-primary:#fff;--text-secondary:#a1a1aa;--text-muted:#8a8a93;--accent:#fff;--heat-0:#1a1a1d;--heat-1:#3f3f46;--heat-2:#71717a;--heat-3:#a1a1aa;--heat-4:#fff;--success:#4ade80;--font-sans:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "Cascadia Code", Consolas, monospace;--space-1:8px;--space-2:16px;--space-3:24px;--space-4:40px;--space-5:80px;--radius-card:8px;--radius-control:8px;--radius-pill:9999px}*,:before,:after{box-sizing:border-box}html{color-scheme:dark;background:var(--background)}body{background:var(--background);color:var(--text-secondary);font:400 14px/1.6 var(--font-mono);-webkit-font-smoothing:antialiased;margin:0}a{color:inherit}:focus-visible{outline:2px solid var(--text-primary);outline-offset:2px}.label{font:600 12px/1.2 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}@media (prefers-reduced-motion:no-preference){.reveal{animation:.5s both reveal}@keyframes reveal{0%{opacity:0;transform:translateY(6px)}}}.head[data-astro-cid-43ievri4]{padding:var(--space-5) var(--space-3) var(--space-4);position:relative;overflow:hidden}.dots[data-astro-cid-43ievri4]{background-image:radial-gradient(var(--border-strong) 1px, transparent 1px);opacity:.45;background-size:24px 24px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(at 20% 20%,#000,#0000 70%);mask-image:radial-gradient(at 20% 20%,#000,#0000 70%)}.inner[data-astro-cid-43ievri4]{gap:var(--space-2);flex-direction:column;align-items:flex-start;display:flex;position:relative}h1[data-astro-cid-43ievri4]{font:500 clamp(36px, 7vw, 64px) / 1.04 var(--font-sans);color:var(--text-primary);text-wrap:balance;margin:0}p[data-astro-cid-43ievri4]{max-width:58ch;margin:0;font-size:16px}.actions[data-astro-cid-43ievri4]{gap:var(--space-1);margin-top:var(--space-1);flex-wrap:wrap;display:flex}.btn[data-astro-cid-43ievri4]{font:600 14px var(--font-mono);border-radius:var(--radius-control);border:1px solid #0000;align-items:center;gap:8px;padding:10px 16px;text-decoration:none;transition:transform .15s,background .15s,border-color .15s;display:inline-flex}.btn[data-astro-cid-43ievri4] svg[data-astro-cid-43ievri4]{flex:none;width:16px;height:16px}.btn[data-astro-cid-43ievri4]:hover{transform:translateY(-1px)}.primary[data-astro-cid-43ievri4]{background:var(--accent);color:var(--background)}.primary[data-astro-cid-43ievri4]:hover{background:#e4e4e7}.secondary[data-astro-cid-43ievri4]{color:var(--text-primary);border-color:var(--border-strong)}.secondary[data-astro-cid-43ievri4]:hover{border-color:var(--text-primary)}.card[data-astro-cid-y2vllrex]{min-width:0;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-card);background:var(--surface);flex-direction:column;gap:12px;text-decoration:none;transition:transform .2s,border-color .2s;display:flex;position:relative;overflow:hidden}a[data-astro-cid-y2vllrex].card:hover{border-color:var(--border-strong);transform:translateY(-2px)}.card[data-astro-cid-y2vllrex]:before{content:"";background:radial-gradient(320px circle at var(--mx,50%) var(--my,0%), #ffffff14, transparent 60%);opacity:0;pointer-events:none;transition:opacity .25s;position:absolute;inset:0}.card[data-astro-cid-y2vllrex]:hover:before{opacity:1}.top[data-astro-cid-y2vllrex]{justify-content:space-between;align-items:center;gap:8px;display:flex}h3[data-astro-cid-y2vllrex]{font:600 20px/1.3 var(--font-sans);color:var(--text-primary);margin:0}p[data-astro-cid-y2vllrex]{margin:0}.pill[data-astro-cid-y2vllrex]{border-radius:var(--radius-pill);background:var(--surface-raised);border:1px solid var(--border);color:var(--text-secondary);white-space:nowrap;padding:4px 10px}.tags[data-astro-cid-y2vllrex]{flex-wrap:wrap;gap:8px;margin-top:auto;display:flex}.tag[data-astro-cid-y2vllrex]{border-radius:var(--radius-pill);background:var(--surface-raised);color:var(--text-secondary);border:1px solid var(--border);padding:6px 10px}.foot[data-astro-cid-y2vllrex]{justify-content:space-between;gap:8px;display:flex}.go[data-astro-cid-y2vllrex]{color:var(--text-primary)}@media (prefers-reduced-motion:reduce){.card[data-astro-cid-y2vllrex]{transition:none}a[data-astro-cid-y2vllrex].card:hover{transform:none}}.panel[data-astro-cid-mymv6l77]{padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-card);background:var(--surface)}.title[data-astro-cid-mymv6l77]{margin:0 0 var(--space-2)}.title[data-astro-cid-mymv6l77] b[data-astro-cid-mymv6l77]{color:var(--text-primary);font-weight:600}.scroll[data-astro-cid-mymv6l77]{padding-bottom:4px;overflow-x:auto}.months[data-astro-cid-mymv6l77]{min-width:max-content;height:16px;color:var(--text-muted);grid-auto-columns:11px;grid-auto-flow:column;gap:3px;margin-bottom:4px;font-size:11px;display:grid}.months[data-astro-cid-mymv6l77] span[data-astro-cid-mymv6l77]{white-space:nowrap}.cells[data-astro-cid-mymv6l77]{grid-template-rows:repeat(7,11px);grid-auto-columns:11px;grid-auto-flow:column;gap:3px;min-width:max-content;display:grid}i[data-astro-cid-mymv6l77]{border-radius:2px;width:11px;height:11px;display:inline-block}.cells[data-astro-cid-mymv6l77] i[data-astro-cid-mymv6l77]{width:auto;height:auto}.l0[data-astro-cid-mymv6l77]{background:var(--heat-0)}.l1[data-astro-cid-mymv6l77]{background:var(--heat-1)}.l2[data-astro-cid-mymv6l77]{background:var(--heat-2)}.l3[data-astro-cid-mymv6l77]{background:var(--heat-3)}.l4[data-astro-cid-mymv6l77]{background:var(--heat-4)}.legend[data-astro-cid-mymv6l77]{color:var(--text-muted);justify-content:flex-end;align-items:center;gap:4px;margin-top:12px;font-size:11px;display:flex}@media (prefers-reduced-motion:no-preference){.js .cells[data-astro-cid-mymv6l77] i[data-astro-cid-mymv6l77]{opacity:0;transform:scale(.4)}.js .panel[data-astro-cid-mymv6l77].in .cells[data-astro-cid-mymv6l77] i[data-astro-cid-mymv6l77]{animation:.35s forwards pop;animation-delay:calc(var(--c) * 14ms)}@keyframes pop{to{opacity:1;transform:none}}}.switch[data-astro-cid-lemdd452]{top:var(--space-3);right:var(--space-3);z-index:2;border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface);gap:6px;padding:4px;display:flex;position:absolute}a[data-astro-cid-lemdd452]{border-radius:var(--radius-pill);font:600 12px/1 var(--font-mono);letter-spacing:.08em;color:var(--text-muted);border:1px solid #0000;align-items:center;gap:6px;padding:4px 10px 4px 6px;text-decoration:none;transition:color .15s,border-color .15s;display:inline-flex}a[data-astro-cid-lemdd452]:hover{color:var(--text-primary)}a[data-astro-cid-lemdd452][aria-current=true]{color:var(--text-primary);border-color:var(--border-strong);background:var(--surface-raised)}svg[data-astro-cid-lemdd452]{border-radius:2px;flex:none;width:20px;height:14px}.page{border-inline:1px solid var(--border);max-width:960px;min-height:100vh;margin:0 auto;position:relative}section{padding:var(--space-4) var(--space-3);border-top:1px solid var(--border)}section h2{margin:0 0 var(--space-3)}.grid>div{display:flex}.grid>div>*{flex:1}.grid{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (width<=640px){.grid,.two{grid-template-columns:1fr!important}}.skills{gap:var(--space-3) var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (width<=640px){.skills{grid-template-columns:1fr}}.group{flex-direction:column;gap:10px;display:flex}.tags{flex-wrap:wrap;gap:8px;display:flex}.tag{border-radius:var(--radius-pill);background:var(--surface-raised);color:var(--text-secondary);border:1px solid var(--border);padding:6px 10px;transition:color .15s,border-color .15s,transform .15s}.tag:hover{color:var(--text-primary);border-color:var(--border-strong);transform:translateY(-1px)}.job{padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-card);background:var(--surface);position:relative;overflow:hidden}.job.spot:before{content:"";background:radial-gradient(420px circle at var(--mx,50%) var(--my,0%), #ffffff12, transparent 60%);opacity:0;pointer-events:none;transition:opacity .25s;position:absolute;inset:0}.job.spot:hover:before{opacity:1}.job h3{font:600 20px/1.3 var(--font-sans);color:var(--text-primary);margin:0 0 12px}.job h3 span{font:400 14px/1.6 var(--font-mono);color:var(--text-secondary);margin-top:2px;display:block}.job p{margin:0}.job ul{gap:6px;margin:0;padding-left:18px;display:grid}.two{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}footer{justify-content:space-between;gap:var(--space-2);padding:var(--space-4) var(--space-3);border-top:1px solid var(--border);flex-wrap:wrap;display:flex}.contact{gap:var(--space-3);flex-wrap:wrap;display:flex}footer a{color:var(--text-primary);text-underline-offset:4px}@media (prefers-reduced-motion:no-preference){.js .rv{opacity:0;transition:opacity .6s,transform .6s;transition-delay:var(--d,0s);transform:translateY(12px)}.js .rv.in{opacity:1;transform:none}}
