.anchor-link[data-astro-cid-vjexsdwm]{z-index:2;border-radius:var(--radius-xs);color:var(--muted);opacity:0;margin:-.45rem -.55rem -.45rem calc(.4em - .55rem);padding:.45rem .55rem;font-size:.7em;font-weight:700;text-decoration:none;transition:opacity .12s;display:inline-block;position:relative}.anchor-link[data-astro-cid-vjexsdwm]:hover,.anchor-link[data-astro-cid-vjexsdwm]:focus-visible{color:var(--accent-2-text);opacity:1}h2:hover>.anchor-link[data-astro-cid-vjexsdwm],h2:hover>.project-card__name>.anchor-link[data-astro-cid-vjexsdwm],.project-card__name:hover>.anchor-link[data-astro-cid-vjexsdwm]{opacity:1}@media (hover:none){.anchor-link[data-astro-cid-vjexsdwm]{opacity:.55}}.project-card[data-astro-cid-y2vllrex]{border:1px solid var(--card-border);border-radius:var(--radius-lg);background:var(--paper-bright);box-shadow:var(--card-shadow);padding:clamp(1.25rem,2.4vw,1.75rem);transition:background-color .16s,border-color .16s,box-shadow .16s,transform .16s;position:relative}.project-card[data-astro-cid-y2vllrex]:hover{border-color:var(--card-hover-border);background-color:var(--card-hover-bg);box-shadow:var(--card-hover-shadow);transform:translateY(-.16rem)}.project-card[data-astro-cid-y2vllrex]:has(.project-card__title:focus-visible){outline:3px solid var(--accent-2-text);outline-offset:3px}.project-card__heading[data-astro-cid-y2vllrex],.project-card__footer[data-astro-cid-y2vllrex]{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.project-ai[data-astro-cid-y2vllrex]{white-space:nowrap;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.35rem .7rem;padding-top:.2rem;font-size:.68rem;font-weight:800;line-height:1;display:inline-flex}.project-ai__development[data-astro-cid-y2vllrex],.project-ai__feature[data-astro-cid-y2vllrex]{align-items:center;gap:.38rem;display:inline-flex}.project-ai__development[data-astro-cid-y2vllrex]:before,.project-ai__feature[data-astro-cid-y2vllrex]:before{background:var(--ink);content:"";width:1.15rem;height:.22rem}.project-ai__development--paired[data-astro-cid-y2vllrex]:before{background:var(--accent-2)}.project-ai__development--agent-orchestrated[data-astro-cid-y2vllrex]:before{background:var(--accent-1)}.project-ai__feature[data-astro-cid-y2vllrex]:before{background:var(--accent-3)}.project-card__heading[data-astro-cid-y2vllrex]{align-items:flex-start;margin:0}.project-card__title[data-astro-cid-y2vllrex]{letter-spacing:-.035em;font-size:clamp(1.35rem,2.8vw,1.9rem);font-weight:800;line-height:1.08;text-decoration:none;display:inline}.project-card__title[data-astro-cid-y2vllrex]:after{z-index:1;content:"";position:absolute;inset:0}.project-card__title[data-astro-cid-y2vllrex]:focus-visible{outline:none}.project-card__title[data-astro-cid-y2vllrex]:hover{text-decoration:underline}.project-card__body[data-astro-cid-y2vllrex]{margin-top:.7rem;font-size:.88rem}.project-card__body[data-astro-cid-y2vllrex] p[data-astro-cid-y2vllrex]{margin:0}.project-card__footer[data-astro-cid-y2vllrex]{z-index:2;color:var(--muted);align-items:flex-end;margin-top:1.1rem;font-size:.74rem;position:relative}.project-links[data-astro-cid-y2vllrex]{flex-wrap:wrap;justify-content:flex-end;gap:.35rem;font-weight:700;display:flex}.project-links[data-astro-cid-y2vllrex] a[data-astro-cid-y2vllrex],.project-links[data-astro-cid-y2vllrex] button[data-astro-cid-y2vllrex]{border-radius:var(--radius-sm);min-height:1.9rem;color:var(--accent-2-on);background:var(--accent-2);cursor:pointer;border:0;align-items:center;padding:.32rem .5rem;font-size:.68rem;line-height:1;text-decoration:none;display:inline-flex}.project-links[data-astro-cid-y2vllrex] a[data-astro-cid-y2vllrex]{gap:.22rem}.project-links[data-astro-cid-y2vllrex] button[data-astro-cid-y2vllrex]{color:var(--accent-1-on);background:var(--accent-1)}.project-links[data-astro-cid-y2vllrex] a[data-astro-cid-y2vllrex]:last-child{color:var(--paper);background:var(--ink)}.project-links[data-astro-cid-y2vllrex] a[data-astro-cid-y2vllrex]:hover,.project-links[data-astro-cid-y2vllrex] button[data-astro-cid-y2vllrex]:hover{color:var(--accent-3-on);background:var(--accent-3)}@media (width<=52rem){.project-card[data-astro-cid-y2vllrex]:hover{transform:none}}@media (width<=30rem){.project-card__heading[data-astro-cid-y2vllrex],.project-card__footer[data-astro-cid-y2vllrex]{flex-direction:column;align-items:flex-start}.project-links[data-astro-cid-y2vllrex]{justify-content:flex-start}}.demo-modal[data-astro-cid-cvvhioyr]{background:0 0;border:0;outline:0;max-width:none;max-height:none;margin:0;padding:0;inset:50% auto auto 50%;overflow:visible;transform:translate(-50%,-50%)}.demo-modal--media[data-astro-cid-cvvhioyr]{width:min(88vw,152.889svh,88rem);height:fit-content}.demo-modal--workspace[data-astro-cid-cvvhioyr]{width:min(78rem,100vw - 2rem);height:min(54rem,100svh - 2rem)}.demo-modal[data-astro-cid-cvvhioyr][open]{animation:.21s cubic-bezier(.2,.75,.25,1) both demo-modal-enter}.demo-modal[data-astro-cid-cvvhioyr][open][data-closing=true]{animation:.16s ease-in both demo-modal-exit}.demo-modal[data-astro-cid-cvvhioyr]::backdrop{backdrop-filter:blur(.45rem);background:oklch(0% 0 0/.36);animation:.21s ease-out both demo-backdrop-enter}.demo-modal[data-astro-cid-cvvhioyr][data-closing=true]::backdrop{animation:.16s ease-in both demo-backdrop-exit}@keyframes demo-modal-enter{0%{opacity:0;transform:translate(-50%,-48%)scale(.975)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@keyframes demo-modal-exit{0%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-48%)scale(.985)}}@keyframes demo-sheet-enter{0%{opacity:0;transform:translateY(2.5%)}to{opacity:1;transform:none}}@keyframes demo-sheet-exit{0%{opacity:1;transform:none}to{opacity:0;transform:translateY(2.5%)}}@keyframes demo-backdrop-enter{0%{opacity:0}to{opacity:1}}@keyframes demo-backdrop-exit{0%{opacity:1}to{opacity:0}}@media (width<=42rem){.demo-modal--media[data-astro-cid-cvvhioyr]{width:96vw}.demo-modal--workspace[data-astro-cid-cvvhioyr]{touch-action:pan-x pan-y;width:100%;height:100dvh;inset:0;transform:none}.demo-modal--workspace[data-astro-cid-cvvhioyr][open]{animation-name:demo-sheet-enter}.demo-modal--workspace[data-astro-cid-cvvhioyr][open][data-closing=true]{animation-name:demo-sheet-exit}}@media (prefers-reduced-motion:reduce){.demo-modal[data-astro-cid-cvvhioyr],.demo-modal[data-astro-cid-cvvhioyr]::backdrop{animation:none!important}}.project-demo-modal__panel[data-astro-cid-462kgfw2]{aspect-ratio:16/9;border-radius:var(--radius-lg);background:#0a0a12;width:100%;min-width:0;position:relative}.project-demo-modal__panel[data-astro-cid-462kgfw2]:fullscreen{border-radius:0}.project-demo-modal__actions[data-astro-cid-462kgfw2]{z-index:3;flex-direction:column;gap:.5rem;display:flex;position:absolute;top:0;right:-3.4rem}.project-demo-modal__actions[data-astro-cid-462kgfw2] button[data-astro-cid-462kgfw2]{border-radius:var(--radius);color:#fff;backdrop-filter:blur(.45rem);cursor:pointer;background:oklch(9% 0 0/.78);border:1px solid oklch(100% 0 0/.2);place-items:center;width:2.65rem;height:2.65rem;padding:0;display:grid;box-shadow:0 .35rem 1.1rem oklch(0% 0 0/.3)}.project-demo-modal__actions[data-astro-cid-462kgfw2] button[data-astro-cid-462kgfw2] svg[data-astro-cid-462kgfw2]{fill:none;stroke:currentColor;stroke-linecap:square;stroke-width:2px;width:1.25rem;height:1.25rem}.project-demo-modal__actions[data-astro-cid-462kgfw2] button[data-astro-cid-462kgfw2]:hover{color:var(--accent-2-on);background:var(--accent-2)}.project-demo-modal__actions[data-astro-cid-462kgfw2] button[data-astro-cid-462kgfw2]:last-child:hover{color:var(--accent-1-on);background:var(--accent-1)}[data-project-demo][data-demo-state=error] [data-astro-cid-462kgfw2][data-project-demo-fullscreen]{display:none}.project-demo-modal__actions[data-astro-cid-462kgfw2] button[data-astro-cid-462kgfw2]:focus-visible{outline:3px solid var(--accent-3);outline-offset:3px}.project-demo-modal__game[data-astro-cid-462kgfw2]{border-radius:inherit;background:#0a0a12;width:100%;min-width:0;height:100%;min-height:0;overflow:hidden}@media (width<=42rem){.project-demo-modal__actions[data-astro-cid-462kgfw2]{flex-direction:row;gap:.35rem;top:-2.85rem;right:0}.project-demo-modal__actions[data-astro-cid-462kgfw2] button[data-astro-cid-462kgfw2]{width:2.35rem;height:2.35rem}}.projects-intro[data-astro-cid-3rkrlumz]{margin-bottom:clamp(3.5rem,7vw,5rem)}.project-journey[data-astro-cid-3rkrlumz]{gap:0;margin:0 0 6rem;padding:0;list-style:none;display:grid}.journey-entry[data-astro-cid-3rkrlumz]{scroll-margin-top:1.5rem;position:relative}.journey-entry--project[data-astro-cid-3rkrlumz]{z-index:1}.journey-entry--project[data-astro-cid-3rkrlumz]+.journey-entry--project[data-astro-cid-3rkrlumz]{margin-top:2rem}.journey-entry--event[data-astro-cid-3rkrlumz]{grid-template-columns:minmax(0,1fr) 3rem minmax(0,1fr);align-items:center;min-height:4rem;padding:.35rem 0;display:grid}.journey-entry--project[data-astro-cid-3rkrlumz]+.journey-entry--event[data-astro-cid-3rkrlumz]{margin-top:1.5rem}.journey-entry--event[data-astro-cid-3rkrlumz]:has(+.journey-entry--project){margin-bottom:1.5rem}.journey-entry--event[data-astro-cid-3rkrlumz]:before{background:color-mix(in oklch, var(--ink) 45%, var(--paper));content:"";width:1px;position:absolute;top:-1px;bottom:-1px;left:50%;transform:translate(-50%)}.journey-entry--project[data-astro-cid-3rkrlumz]+.journey-entry--event[data-astro-cid-3rkrlumz]:before{top:-1.5rem}.journey-entry--event[data-astro-cid-3rkrlumz]:has(+.journey-entry--project):before{bottom:-1.5rem}.journey-entry--left[data-astro-cid-3rkrlumz] .journey-entry__content[data-astro-cid-3rkrlumz]{grid-column:1}.journey-entry--right[data-astro-cid-3rkrlumz] .journey-entry__content[data-astro-cid-3rkrlumz]{grid-column:3}.journey-entry__node[data-astro-cid-3rkrlumz]{z-index:3;aspect-ratio:1;background:var(--accent-2);border-radius:50%;width:.42rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.journey-entry--career[data-astro-cid-3rkrlumz] .journey-entry__node[data-astro-cid-3rkrlumz]{background:var(--accent-1)}.journey-entry--hackathon[data-astro-cid-3rkrlumz] .journey-entry__node[data-astro-cid-3rkrlumz]{background:color-mix(in oklch, var(--accent-1) 52%, var(--accent-2));width:.54rem}.milestone[data-astro-cid-3rkrlumz]{padding:.25rem 0;position:relative}.journey-entry--left[data-astro-cid-3rkrlumz] .milestone[data-astro-cid-3rkrlumz]{text-align:right;margin-left:auto}.milestone__date[data-astro-cid-3rkrlumz]{color:var(--muted);letter-spacing:.035em;font-size:.64rem;font-weight:700;display:block}.milestone[data-astro-cid-3rkrlumz] h2[data-astro-cid-3rkrlumz]{margin:.18rem 0 0;font-size:1rem;line-height:1.18}.hackathon-win[data-astro-cid-3rkrlumz]{max-width:25rem;padding:.45rem 0}.journey-entry--left[data-astro-cid-3rkrlumz] .hackathon-win[data-astro-cid-3rkrlumz]{text-align:right;margin-left:auto}.hackathon-win__meta[data-astro-cid-3rkrlumz]{color:var(--muted);margin:0;font-size:.68rem;font-weight:700;line-height:1.35}.hackathon-win__meta[data-astro-cid-3rkrlumz]>span[data-astro-cid-3rkrlumz][aria-hidden=true]{margin:0 .18rem}.hackathon-win[data-astro-cid-3rkrlumz] h2[data-astro-cid-3rkrlumz]{margin:.18rem 0 0;font-size:.94rem;line-height:1.2}.hackathon-win[data-astro-cid-3rkrlumz] h2[data-astro-cid-3rkrlumz] span[data-astro-cid-3rkrlumz]{color:var(--muted);font-size:inherit;font-weight:600}.hackathon-win__description[data-astro-cid-3rkrlumz]{color:color-mix(in oklch, var(--ink) 72%, var(--paper));margin:.34rem 0 0;font-size:.74rem;line-height:1.4}.hackathon-win__links[data-astro-cid-3rkrlumz]{flex-wrap:wrap;gap:.75rem;margin:.36rem 0 0;font-size:.68rem;font-weight:750;display:flex}.journey-entry--left[data-astro-cid-3rkrlumz] .hackathon-win__links[data-astro-cid-3rkrlumz]{justify-content:flex-end}.hackathon-win__links[data-astro-cid-3rkrlumz] a[data-astro-cid-3rkrlumz]{color:var(--ink);text-underline-offset:.16rem;align-items:center;gap:.22rem;display:inline-flex}@media (width<=52rem){.projects-intro[data-astro-cid-3rkrlumz]{margin-bottom:3rem}.journey-entry--event[data-astro-cid-3rkrlumz]{min-height:0;padding:.7rem 0 .7rem 2rem;display:block}.journey-entry--event[data-astro-cid-3rkrlumz]:before,.journey-entry__node[data-astro-cid-3rkrlumz]{left:.65rem}.journey-entry--left[data-astro-cid-3rkrlumz] .milestone[data-astro-cid-3rkrlumz],.journey-entry--right[data-astro-cid-3rkrlumz] .milestone[data-astro-cid-3rkrlumz],.journey-entry--left[data-astro-cid-3rkrlumz] .hackathon-win[data-astro-cid-3rkrlumz],.journey-entry--right[data-astro-cid-3rkrlumz] .hackathon-win[data-astro-cid-3rkrlumz]{text-align:left;max-width:none;margin-left:0}.journey-entry--left[data-astro-cid-3rkrlumz] .hackathon-win__links[data-astro-cid-3rkrlumz]{justify-content:flex-start}}@media (width<=30rem){.journey-entry--project[data-astro-cid-3rkrlumz]{margin-left:-1rem;margin-right:-1rem}}
