.top[data-astro-cid-lcdefpme]{isolation:isolate;position:relative;overflow:hidden}.top[data-astro-cid-lcdefpme]:before{content:"";z-index:-1;background:radial-gradient(40rem 28rem at 78% 45%, var(--glow), transparent 70%), radial-gradient(36rem 30rem at 95% 0%, var(--glow-2), transparent 70%);position:absolute;inset:0}.top[data-astro-cid-lcdefpme]:after{content:"";z-index:-1;background-image:linear-gradient(var(--rule) 1px, transparent 1px), linear-gradient(90deg, var(--rule) 1px, transparent 1px);opacity:.55;background-size:56px 56px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(70% 80% at 70% 40%,#000,#0000 75%);mask-image:radial-gradient(70% 80% at 70% 40%,#000,#0000 75%)}.topbar[data-astro-cid-lcdefpme]{align-items:center;gap:1.5rem;padding-block:1.25rem;display:flex}.home[data-astro-cid-lcdefpme]{letter-spacing:-.01em;color:var(--ink);font-weight:800;font-stretch:125%;text-decoration:none}nav[data-astro-cid-lcdefpme]{gap:1.5rem;margin-left:auto;display:flex}nav[data-astro-cid-lcdefpme] a[data-astro-cid-lcdefpme]{color:var(--ink-soft);font-weight:500;text-decoration:none}nav[data-astro-cid-lcdefpme] a[data-astro-cid-lcdefpme]:hover{color:var(--ink)}.theme[data-astro-cid-lcdefpme]{border:1px solid var(--rule);background:var(--raised);width:2.5rem;height:2.5rem;color:var(--ink);cursor:pointer;border-radius:999px;place-items:center;display:grid}.theme[data-astro-cid-lcdefpme]:hover{border-color:var(--accent)}.theme[data-astro-cid-lcdefpme] svg[data-astro-cid-lcdefpme]{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;width:1.15rem;height:1.15rem}.theme[data-astro-cid-lcdefpme] .sun[data-astro-cid-lcdefpme]{display:none}:root[data-theme=light] .theme[data-astro-cid-lcdefpme] .sun[data-astro-cid-lcdefpme]{display:block}:root[data-theme=light] .theme[data-astro-cid-lcdefpme] .moon[data-astro-cid-lcdefpme]{display:none}.hero[data-astro-cid-lcdefpme]{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:center;gap:clamp(1rem,3vw,2.5rem);padding-block:clamp(2.5rem,6vw,5rem) clamp(3rem,7vw,6rem);display:grid}.hello[data-astro-cid-lcdefpme]{color:var(--accent);align-items:center;gap:.85rem;font-weight:600;display:flex}.avatar[data-astro-cid-lcdefpme]{object-fit:cover;object-position:50% 15%;background:var(--raised);width:3.25rem;height:3.25rem;box-shadow:0 0 0 2px var(--paper), 0 0 0 4px var(--accent);border-radius:50%}h1[data-astro-cid-lcdefpme]{letter-spacing:-.035em;text-wrap:balance;margin-top:1.25rem;font-size:clamp(2.5rem,5.4vw,4.6rem);font-weight:850;line-height:.96}.lede[data-astro-cid-lcdefpme]{max-width:48ch;color:var(--ink-soft);margin-top:1.5rem;font-size:clamp(1.125rem,1.6vw,1.25rem);line-height:1.5}.actions[data-astro-cid-lcdefpme]{flex-wrap:wrap;align-items:center;gap:1.5rem;margin-top:2rem;font-weight:600;display:flex}.actions[data-astro-cid-lcdefpme] a[data-astro-cid-lcdefpme]{color:var(--ink)}.actions[data-astro-cid-lcdefpme] .button[data-astro-cid-lcdefpme]{background:var(--accent);color:var(--on-accent);box-shadow:0 0 0 0 var(--glow);border-radius:999px;padding:.85rem 1.5rem;text-decoration:none;transition:box-shadow .2s}.actions[data-astro-cid-lcdefpme] .button[data-astro-cid-lcdefpme]:hover{box-shadow:0 0 0 6px var(--glow)}.layers[data-astro-cid-lcdefpme]{--size:13rem;--gap:3rem;--unrotate:rotateZ(calc(42deg - var(--rz,0deg))) rotateX(calc(-58deg - var(--rx,0deg)));perspective:1800px;place-items:center;height:32rem;display:grid;position:relative}.scene[data-astro-cid-lcdefpme]{width:var(--size);height:var(--size);margin-top:calc(var(--gap) * 3.2);transform-style:preserve-3d;translate:-4.5rem;transform:rotateX(calc(58deg + var(--rx,0deg))) rotateZ(calc(-42deg + var(--rz,0deg)));transition:transform .4s ease-out;position:relative}.layer[data-astro-cid-lcdefpme]{transform-style:preserve-3d;border:1px solid color-mix(in srgb, var(--accent) 35%, transparent);background:linear-gradient(color-mix(in srgb, var(--accent) 10%, transparent) 1px, transparent 1px) 0 0 / 1.3rem 1.3rem, linear-gradient(90deg, color-mix(in srgb, var(--accent) 10%, transparent) 1px, transparent 1px) 0 0 / 1.3rem 1.3rem, color-mix(in srgb, var(--raised) 55%, transparent);transform:translateZ(calc(var(--i) * var(--gap)));animation:4.8s ease-in-out infinite lit;animation-delay:calc(var(--i) * .6s);border-radius:1.1rem;position:absolute;inset:0}.layer[data-astro-cid-lcdefpme]:last-child{background:linear-gradient(color-mix(in srgb, var(--accent) 16%, transparent) 1px, transparent 1px) 0 0 / 1.3rem 1.3rem, linear-gradient(90deg, color-mix(in srgb, var(--accent) 16%, transparent) 1px, transparent 1px) 0 0 / 1.3rem 1.3rem, color-mix(in srgb, var(--accent) 12%, color-mix(in srgb, var(--raised) 60%, transparent))}@keyframes lit{0%,28%,to{border-color:color-mix(in srgb, var(--accent) 35%, transparent);box-shadow:none}10%{border-color:var(--accent);box-shadow:0 0 2.5rem var(--glow), inset 0 0 2rem var(--glow)}}.tag[data-astro-cid-lcdefpme]{transform-origin:0 0;width:max-content;transform:var(--unrotate) translateY(-50%);padding-left:2.25rem;line-height:1.2;transition:transform .4s ease-out;display:grid;position:absolute;top:100%;left:100%}.tag[data-astro-cid-lcdefpme]:before{content:"";background:color-mix(in srgb, var(--accent) 60%, transparent);width:1.6rem;height:1px;position:absolute;top:50%;left:.25rem}.tag[data-astro-cid-lcdefpme]:after{content:"";background:var(--accent);border-radius:50%;width:6px;height:6px;position:absolute;top:calc(50% - 3px);left:0}.tag[data-astro-cid-lcdefpme] strong[data-astro-cid-lcdefpme]{letter-spacing:-.01em;color:var(--ink);animation:4.8s ease-in-out infinite tag-lit;animation-delay:calc(var(--i) * .6s);font-size:.95rem;font-weight:750;font-stretch:125%}.tag[data-astro-cid-lcdefpme] small[data-astro-cid-lcdefpme]{color:var(--ink-soft);font-size:.78rem}@keyframes tag-lit{0%,28%,to{color:var(--ink)}10%{color:var(--accent)}}.beam[data-astro-cid-lcdefpme]{width:2px;height:calc(var(--gap) * 4 + 5rem);transform-origin:50% 100%;background:linear-gradient(to top, transparent, var(--accent) 12%, var(--accent) 85%, transparent);box-shadow:0 0 14px 2px var(--glow);position:absolute;bottom:50%;left:calc(50% - 1px);transform:rotateX(-90deg)}.beam[data-astro-cid-lcdefpme]:not(.beam-cross):after{content:"";width:10px;height:10px;box-shadow:0 0 10px 3px var(--accent), 0 0 28px 8px var(--glow);background:#fff;border-radius:50%;animation:4.8s linear infinite pulse;position:absolute;left:-4px}@keyframes pulse{0%,8%{opacity:0;bottom:0}10%{opacity:1;bottom:0}72%{opacity:1}80%,to{opacity:0;bottom:100%}}.beam-cross[data-astro-cid-lcdefpme]{transform:rotate(90deg)rotateX(-90deg)}.beam-top[data-astro-cid-lcdefpme]{transform-style:preserve-3d;transform:translateZ(calc(var(--gap) * 4 + 5rem));position:absolute;top:50%;left:50%}.beam-top[data-astro-cid-lcdefpme] span[data-astro-cid-lcdefpme]{border:1px solid var(--accent);background:var(--paper);width:max-content;color:var(--accent);box-shadow:0 0 24px var(--glow);transform-origin:0 0;transform:var(--unrotate) translate(-50%, -100%);border-radius:999px;padding:.25rem .8rem;font-size:.85rem;font-weight:750;font-stretch:125%;transition:transform .4s ease-out;display:block;position:absolute}.section[data-astro-cid-lcdefpme]{padding-block:var(--space-section) 0}.section-head[data-astro-cid-lcdefpme]{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem 2rem;margin-bottom:clamp(1.75rem,4vw,2.75rem);display:flex}.section-head[data-astro-cid-lcdefpme] h2[data-astro-cid-lcdefpme]{letter-spacing:-.035em;font-size:clamp(2rem,4.6vw,3.5rem);font-weight:850;line-height:1}.section-head[data-astro-cid-lcdefpme] p[data-astro-cid-lcdefpme]{max-width:40ch;color:var(--ink-soft)}.skill-row[data-astro-cid-lcdefpme]{border-top:1px solid var(--rule);grid-template-columns:minmax(0,14rem) minmax(0,1fr);align-items:baseline;gap:1.5rem;padding-block:1.1rem;display:grid}.skill-row[data-astro-cid-lcdefpme] dt[data-astro-cid-lcdefpme]{letter-spacing:-.01em;font-weight:750;font-stretch:125%}.skill-row[data-astro-cid-lcdefpme] dd[data-astro-cid-lcdefpme]{color:var(--ink-soft)}.timeline[data-astro-cid-lcdefpme]>li[data-astro-cid-lcdefpme]{grid-template-columns:minmax(0,14rem) minmax(0,1fr);gap:1.5rem;padding:0 0 2.5rem 2rem;display:grid;position:relative}.timeline[data-astro-cid-lcdefpme]>li[data-astro-cid-lcdefpme]:before{content:"";background:var(--accent);width:.8rem;height:.8rem;box-shadow:0 0 12px var(--glow);border-radius:50%;position:absolute;top:.45em;left:0}.timeline[data-astro-cid-lcdefpme]>li[data-astro-cid-lcdefpme]:not(:last-child):after{content:"";background:var(--rule);width:2px;position:absolute;top:1.6em;bottom:.2rem;left:calc(.4rem - 1px)}.timeline[data-astro-cid-lcdefpme]>li[data-astro-cid-lcdefpme]:last-child:before{background:var(--paper);border:2px solid var(--accent);box-shadow:none}.when[data-astro-cid-lcdefpme]{color:var(--accent);font-weight:600}.timeline[data-astro-cid-lcdefpme] h3[data-astro-cid-lcdefpme]{letter-spacing:-.015em;font-size:1.35rem;font-weight:780;line-height:1.25}.timeline[data-astro-cid-lcdefpme] p[data-astro-cid-lcdefpme]:not(.when){max-width:64ch;color:var(--ink-soft);margin-top:.6rem}.footer[data-astro-cid-lcdefpme]{margin-top:var(--space-section);border-top:1px solid var(--rule);color:var(--ink-soft);justify-content:space-between;padding-block:2rem 2.5rem;font-size:.95rem;display:flex}.footer[data-astro-cid-lcdefpme] a[data-astro-cid-lcdefpme]{color:var(--ink-soft)}@media (width>=1180px){.layers[data-astro-cid-lcdefpme]{--size:14.5rem;--gap:3.3rem;height:35rem}}@media (width>=761px) and (width<=1060px){.layers[data-astro-cid-lcdefpme]{--size:10.5rem;--gap:2.5rem}.scene[data-astro-cid-lcdefpme]{translate:-7rem}}@media (width<=760px){nav[data-astro-cid-lcdefpme]{display:none}.theme[data-astro-cid-lcdefpme]{margin-left:auto}.hero[data-astro-cid-lcdefpme]{grid-template-columns:1fr;padding-top:1.5rem}.layers[data-astro-cid-lcdefpme]{--size:9.5rem;--gap:2.3rem;height:17rem;margin-block:3.5rem -2.5rem}.scene[data-astro-cid-lcdefpme]{translate:-3.5rem}.tag[data-astro-cid-lcdefpme] small[data-astro-cid-lcdefpme]{display:none}.skill-row[data-astro-cid-lcdefpme],.timeline[data-astro-cid-lcdefpme]>li[data-astro-cid-lcdefpme]{grid-template-columns:1fr;gap:.4rem}}
