.journey-timeline[data-astro-cid-eqtjwh35]{--rail-x:7px;--dot-y:.625rem;--rail:color-mix(in oklab, var(--color-white) 15%, transparent);--dot-ring:color-mix(in oklab, var(--color-white) 30%, transparent)}@media (width>=48rem){.journey-timeline[data-astro-cid-eqtjwh35]{--rail-x:11rem;--dot-y:1.2375rem}}.journey-entry[data-astro-cid-eqtjwh35]:not(:last-child):before,.journey-entry[data-astro-cid-eqtjwh35]:not(:last-child):after{content:"";left:calc(var(--rail-x) - .5px);top:var(--dot-y);border-left:1px solid var(--rail);height:100%;position:absolute}.journey-entry[data-astro-cid-eqtjwh35][data-before-future]:before,.journey-entry[data-astro-cid-eqtjwh35][data-before-future]:after{border-left-style:dashed}.journey-entry[data-astro-cid-eqtjwh35]:not(:last-child):after{border-left-color:var(--color-primary);clip-path:inset(0 0 calc((1 - var(--seg-fill,0)) * 100%) 0);opacity:0}.journey-dot[data-astro-cid-eqtjwh35]{z-index:1;left:var(--rail-x);top:var(--dot-y);border:1px solid var(--dot-ring);background:var(--color-secondary);border-radius:9999px;width:15px;height:15px;transition:background-color .4s,border-color .4s,box-shadow .4s;position:absolute;translate:-50% -50%}.journey-entry[data-astro-cid-eqtjwh35][data-future] .journey-dot[data-astro-cid-eqtjwh35]{border-style:dashed}.journey-tip[data-astro-cid-eqtjwh35]{z-index:2;left:var(--rail-x);top:var(--tip-y,0);background:var(--color-primary);width:7px;height:7px;box-shadow:0 0 14px 3px color-mix(in oklab, var(--color-primary) 55%, transparent);opacity:0;pointer-events:none;border-radius:9999px;position:absolute;translate:-50% -50%}.journey-fade[data-astro-cid-eqtjwh35],.journey-title[data-astro-cid-eqtjwh35]{transition:opacity .5s var(--ease-in-cubic), color .4s}[data-astro-cid-eqtjwh35][data-variant=static] [data-astro-cid-eqtjwh35][data-current] .journey-dot[data-astro-cid-eqtjwh35]{background:var(--color-primary);border-color:var(--color-primary)}[data-astro-cid-eqtjwh35][data-variant=static] [data-astro-cid-eqtjwh35][data-current] .journey-title[data-astro-cid-eqtjwh35]{color:var(--color-primary)}[data-astro-cid-eqtjwh35][data-variant=scroll][data-ready] .journey-entry[data-astro-cid-eqtjwh35]:after{opacity:1}[data-astro-cid-eqtjwh35][data-variant=scroll][data-ready] .journey-tip[data-astro-cid-eqtjwh35]{opacity:var(--tip-on,0)}[data-astro-cid-eqtjwh35][data-variant=scroll][data-ready] .journey-entry[data-astro-cid-eqtjwh35]:not([data-reached]) .journey-fade[data-astro-cid-eqtjwh35]{opacity:.35}[data-astro-cid-eqtjwh35][data-variant=scroll][data-ready] [data-astro-cid-eqtjwh35][data-reached] .journey-dot[data-astro-cid-eqtjwh35]{background:var(--color-primary);border-color:var(--color-primary)}[data-astro-cid-eqtjwh35][data-variant=scroll][data-ready] [data-astro-cid-eqtjwh35][data-reached][data-future] .journey-dot[data-astro-cid-eqtjwh35]{background:var(--color-secondary)}[data-astro-cid-eqtjwh35][data-variant=scroll][data-ready] [data-astro-cid-eqtjwh35][data-reached][data-current] .journey-dot[data-astro-cid-eqtjwh35]{box-shadow:0 0 0 5px color-mix(in oklab, var(--color-primary) 20%, transparent)}[data-astro-cid-eqtjwh35][data-variant=scroll][data-ready] [data-astro-cid-eqtjwh35][data-reached][data-current] .journey-title[data-astro-cid-eqtjwh35]{color:var(--color-primary)}@media (prefers-reduced-motion:reduce){.journey-dot[data-astro-cid-eqtjwh35],.journey-fade[data-astro-cid-eqtjwh35],.journey-title[data-astro-cid-eqtjwh35]{transition:none}}[data-astro-cid-eqtjwh35][data-variant=scroll]:not([data-ready]) [data-astro-cid-eqtjwh35][data-current] .journey-dot[data-astro-cid-eqtjwh35]{background:var(--color-primary);border-color:var(--color-primary)}[data-astro-cid-eqtjwh35][data-variant=scroll]:not([data-ready]) [data-astro-cid-eqtjwh35][data-current] .journey-title[data-astro-cid-eqtjwh35]{color:var(--color-primary)}:root{--nav-play:paused}.project-grid[data-astro-cid-lcdefpme]{--project-title:var(--color-white);--project-description:var(--color-slate-300);--project-detail:var(--color-slate-400);--project-badge-bg:#1b212d;--project-card-bg:transparent;--project-arrow-x:0px;--project-arrow-y:0px;--project-halo:var(--color-secondary);isolation:isolate;position:relative}.project-card[data-astro-cid-lcdefpme]>*{z-index:2;position:relative}.project-card[data-astro-cid-lcdefpme]{text-shadow:0 0 2px var(--project-halo), 0 0 4px var(--project-halo), 0 0 8px var(--project-halo), 0 0 12px var(--project-halo)}.project-card[data-astro-cid-lcdefpme] li[data-astro-cid-lcdefpme]{text-shadow:none}@media (hover:hover) and (pointer:fine){.project-grid[data-astro-cid-lcdefpme],.project-grid[data-astro-cid-lcdefpme] *{cursor:none}.project-grid[data-astro-cid-lcdefpme][data-pointer-active]>.project-cell[data-astro-cid-lcdefpme]:not(:hover){--project-title:var(--color-slate-400);--project-description:var(--color-slate-600);--project-detail:var(--color-slate-600);--project-badge-bg:#171d28}.project-cell[data-astro-cid-lcdefpme]:hover{--project-card-bg:color-mix(in oklab, var(--color-gray-800) 50%, transparent);--project-title:var(--color-primary);--project-halo:color-mix(in oklab, var(--color-gray-800) 50%, var(--color-secondary));--project-arrow-x:var(--spacing);--project-arrow-y:calc(var(--spacing) * -1)}}.grain-blob{opacity:.66;mask-image:radial-gradient(circle closest-side,#000 0%,#000000b3 18%,#0006 38%,#00000029 60%,#0000000a 82%,#0000 100%)}.project-card[data-astro-cid-lcdefpme][data-dither-pending],.fade-in[data-astro-cid-lcdefpme]{opacity:0}.hero-char[data-astro-cid-lcdefpme]{display:inline-block}@media (prefers-reduced-motion:no-preference){.hero-char[data-astro-cid-lcdefpme]{animation:hero-char-in .6s var(--ease-in-cubic) both}.scroll-cue[data-astro-cid-lcdefpme]{animation:scroll-cue-in .6s var(--ease-in-cubic) both}}@keyframes scroll-cue-in{0%{opacity:0;transform:translateY(-1rem)}to{opacity:1;transform:none}}@keyframes hero-char-in{0%{opacity:0;filter:blur(4px);transform:translateY(.35em)}to{opacity:1;filter:none;transform:none}}
