.hero-nav[data-astro-cid-lsxh5olc]{position:fixed;top:49px;right:30px;z-index:20;display:flex;gap:14px;align-items:center;font-family:var(--font-mono)}.cm-item[data-astro-cid-lsxh5olc]{display:flex;align-items:center;gap:6px;text-decoration:none}.cm-label[data-astro-cid-lsxh5olc]{font-size:12.4px;letter-spacing:.18em;text-transform:uppercase;color:var(--color-cat-projects);transition:color .2s;white-space:nowrap}.cm-item[data-astro-cid-lsxh5olc]:hover .cm-label[data-astro-cid-lsxh5olc]{color:var(--acc)}.cm-item[data-astro-cid-lsxh5olc]:focus-visible{outline:2px solid var(--acc);outline-offset:4px;border-radius:4px}.cm-node[data-astro-cid-lsxh5olc]{width:42px;height:42px;display:block;flex-shrink:0}.nav-sep[data-astro-cid-lsxh5olc]{width:1px;height:18px;background:var(--hair);flex-shrink:0;margin:0 6px}.ln-wrap[data-astro-cid-lsxh5olc]{position:relative;display:inline-flex}.ln-svg-layer[data-astro-cid-lsxh5olc],.ln-arc-layer[data-astro-cid-lsxh5olc],.ln-spark-layer[data-astro-cid-lsxh5olc]{position:absolute;inset:0;pointer-events:none;overflow:visible}.cta[data-astro-cid-lsxh5olc]{color:#061320;background:#fff;padding:8.8px 17.6px;border-radius:99px;font-size:12.4px;letter-spacing:.18em;font-weight:500;white-space:nowrap;text-decoration:none;box-shadow:0 0 22px #ffffff2e;position:relative;z-index:1}.cta[data-astro-cid-lsxh5olc]:hover{background:var(--acc);color:#061320}.cta[data-astro-cid-lsxh5olc]:focus-visible{outline:2px solid var(--acc);outline-offset:3px}@keyframes bolt-flash{0%{opacity:1}80%{opacity:.7}to{opacity:0}}.lightning-bolt-flash{animation:bolt-flash .2s ease-out forwards}@keyframes spark-fade{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(.3)}}@keyframes arc-fade{0%{opacity:.85}to{opacity:0}}@media(max-width:720px){.cm-item[data-astro-cid-lsxh5olc],.nav-sep[data-astro-cid-lsxh5olc]{display:none}}@media(prefers-reduced-motion:reduce){.lightning-bolt-flash{animation:none;opacity:0}}.hud[data-astro-cid-gagj56jx]{position:fixed;z-index:20;font-family:var(--font-mono)}.badge[data-astro-cid-gagj56jx]{top:8px;left:30px;display:flex;align-items:center;gap:18px;text-decoration:none;color:inherit;cursor:pointer}.badge[data-astro-cid-gagj56jx] .w[data-astro-cid-gagj56jx]{transition:color .2s ease}.badge[data-astro-cid-gagj56jx]:hover .w[data-astro-cid-gagj56jx]{color:var(--acc)}.badge[data-astro-cid-gagj56jx]:focus-visible{outline:2px solid var(--acc);outline-offset:6px;border-radius:8px}.badge[data-astro-cid-gagj56jx] .logo[data-astro-cid-gagj56jx]{width:140px;height:140px;display:block;flex-shrink:0;object-fit:contain;mix-blend-mode:screen}.badge[data-astro-cid-gagj56jx] .badge-text[data-astro-cid-gagj56jx]{display:flex;flex-direction:column;gap:6px}.badge[data-astro-cid-gagj56jx] .w[data-astro-cid-gagj56jx]{font-family:var(--font-syncopate);font-size:27px;letter-spacing:.26em;padding-left:.26em;color:var(--ink);line-height:1}.badge[data-astro-cid-gagj56jx] .s[data-astro-cid-gagj56jx]{font-size:10px;color:var(--mut);letter-spacing:.2em;text-transform:uppercase;display:flex;align-items:center;gap:7px}.badge[data-astro-cid-gagj56jx] .s[data-astro-cid-gagj56jx] i[data-astro-cid-gagj56jx]{width:5px;height:5px;border-radius:50%;background:var(--color-cat-services);box-shadow:0 0 8px var(--color-cat-services)}.readout[data-astro-cid-gagj56jx]{left:30px;bottom:28px;font-size:9.5px;color:var(--mut);letter-spacing:.1em;line-height:2.1;display:flex;flex-direction:column;gap:6px}.readout[data-astro-cid-gagj56jx] span[data-astro-cid-gagj56jx]{color:var(--ink)}.readout[data-astro-cid-gagj56jx] .fps-row[data-astro-cid-gagj56jx]{display:flex;align-items:center;gap:14px;margin-top:4px;line-height:1}.readout[data-astro-cid-gagj56jx] .home[data-astro-cid-gagj56jx]{display:inline-flex;align-items:center;gap:6px;cursor:pointer;color:var(--ink2);white-space:nowrap;font:inherit;border:1px solid var(--hair);border-radius:99px;padding:6px 12px;background:var(--glass);backdrop-filter:blur(8px);transition:.2s}.readout[data-astro-cid-gagj56jx] .home[data-astro-cid-gagj56jx]:hover{border-color:var(--acc);color:var(--acc)}.readout[data-astro-cid-gagj56jx] .home[data-astro-cid-gagj56jx]:focus-visible{outline:2px solid var(--acc);outline-offset:2px}.map[data-astro-cid-gagj56jx]{right:30px;bottom:28px;width:150px;height:96px;border:1px solid var(--hair);border-radius:9px;background:var(--glass);backdrop-filter:blur(10px);overflow:hidden;box-shadow:0 10px 30px #0006}.map[data-astro-cid-gagj56jx] canvas[data-astro-cid-gagj56jx]{width:100%;height:100%;display:block}#hint[data-astro-cid-gagj56jx]{position:fixed;left:50%;bottom:118px;transform:translate(-50%);z-index:8;pointer-events:none;font-family:var(--font-mono);font-size:10px;letter-spacing:.26em;text-transform:uppercase;color:var(--mut);display:flex;align-items:center;gap:14px;white-space:nowrap;opacity:0;animation:hintIn 1.2s ease .9s forwards;transition:opacity .8s ease}#hint[data-astro-cid-gagj56jx] .ln[data-astro-cid-gagj56jx]{width:36px;height:1px;background:linear-gradient(90deg,transparent,var(--hair))}#hint[data-astro-cid-gagj56jx] .ln[data-astro-cid-gagj56jx]:last-child{background:linear-gradient(90deg,var(--hair),transparent)}#hint[data-astro-cid-gagj56jx].off{opacity:0!important}@keyframes hintIn{to{opacity:1}}@media(max-width:1080px){.readout[data-astro-cid-gagj56jx],.map[data-astro-cid-gagj56jx]{display:none}}@media(prefers-reduced-motion:reduce){#hint[data-astro-cid-gagj56jx]{animation:none;opacity:1}}#hero-chrome{display:none}html.field-on #hero-chrome{display:block}html.field-on .hero-mobile{display:none}html.field-on,html.field-on body{overflow:hidden;height:100%;overscroll-behavior:none}.hero-stage{position:fixed;inset:0;z-index:1}.hero-stage #mesh{position:absolute;inset:0;width:100%;height:100%;display:block}.hero-stage .hero-scrim{position:absolute;left:0;right:0;bottom:0;height:30%;pointer-events:none;background:linear-gradient(180deg,transparent 0%,rgba(2,3,9,.55) 78%,rgba(2,3,9,.72) 100%)}#tip{position:absolute;z-index:18;pointer-events:none;transform:translate(-50%,-150%);background:var(--glass);backdrop-filter:blur(12px);border:1px solid var(--hair);border-radius:8px;padding:7px 11px;white-space:nowrap;opacity:0;transition:opacity .16s ease;box-shadow:0 10px 30px #00000073}#tip .k{display:block;font-family:var(--font-mono);font-size:8.5px;letter-spacing:.18em;text-transform:uppercase;margin-bottom:2px}#tip .n{font-family:var(--font-hanken);font-size:13px;font-weight:500;color:var(--ink)}#tip.on{opacity:1}.hero-mobile{display:flex;flex-direction:column;gap:40px;max-width:720px;margin:0 auto;padding:clamp(96px,18vh,160px) 22px calc(96px + env(safe-area-inset-bottom))}.hm-head{display:flex;flex-direction:column;gap:14px}.hm-wordmark{font-family:var(--font-syncopate);font-weight:700;font-size:clamp(30px,11vw,52px);letter-spacing:.18em;color:var(--ink);margin:0}.hm-tagline{font-family:var(--font-mono);text-transform:lowercase;letter-spacing:.22em;color:var(--acc);font-size:13px;margin:0}.hm-thesis{color:var(--ink2);font-size:16px;line-height:1.6;max-width:48ch;margin:4px 0 0}.hm-dock{margin-top:12px;align-self:flex-start}.hm-constellation{display:flex;flex-direction:column;gap:30px}.hm-group-title{font-family:var(--font-mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--mut);margin:0 0 12px}.hm-group-title a{color:var(--mut);text-decoration:none}.hm-group-title a:hover{color:var(--acc)}.hm-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.hm-list>li>a{text-decoration:none;display:block}.hm-chip{display:flex;align-items:flex-start;gap:13px;padding:15px 17px}.hm-chip-dot{flex-shrink:0;width:9px;height:9px;border-radius:50%;margin-top:5px;background:var(--color-cat-services);box-shadow:0 0 10px currentColor}.hm-chip-dot[data-kind=Project]{background:var(--color-cat-projects)}.hm-chip-dot[data-kind=Tool]{background:var(--color-acc)}.hm-chip-dot[data-kind=Journal]{background:var(--color-cat-journal)}.hm-chip-body{display:flex;flex-direction:column;gap:4px}.hm-chip-title{font-family:var(--font-syncopate);font-size:13px;letter-spacing:.04em;color:var(--ink)}.hm-chip-desc{font-size:13px;line-height:1.55;color:var(--ink2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.hm-cta{position:sticky;bottom:calc(16px + env(safe-area-inset-bottom));align-self:center;background:#fff;color:#061320;text-decoration:none;font-family:var(--font-mono);font-size:13px;letter-spacing:.18em;text-transform:uppercase;font-weight:500;padding:14px 28px;border-radius:99px;box-shadow:0 10px 30px #00000073}.hm-cta:hover{background:var(--acc)}
