.lockup[data-astro-cid-f7espo7c]{font-family:var(--font-sans);letter-spacing:var(--track-tight);color:var(--text);white-space:nowrap;align-items:center;gap:.5em;font-weight:700;display:inline-flex}.lockup--md[data-astro-cid-f7espo7c]{font-size:1.125rem}.lockup--sm[data-astro-cid-f7espo7c]{font-size:1rem}.lockup__mark[data-astro-cid-f7espo7c]{flex:none;width:auto;height:1.6em;display:block}.lockup__accent[data-astro-cid-f7espo7c]{color:var(--accent)}.nav[data-astro-cid-wpvy4v7s]{z-index:100;view-transition-name:site-nav;color:var(--text-body);transition:background var(--dur-2) var(--ease-out), border-color var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out), color var(--dur-4) var(--ease-in-out);background:0 0;border-bottom:1px solid #0000;position:fixed;top:0;left:0;right:0}.nav[data-astro-cid-wpvy4v7s].is-scrolled{background:var(--bg);border-bottom-color:var(--border);box-shadow:var(--shadow-sm)}.nav__inner[data-astro-cid-wpvy4v7s]{align-items:center;gap:var(--s-5);height:4.5rem;display:flex}.nav__brand[data-astro-cid-wpvy4v7s]{margin-right:auto;text-decoration:none}.nav__links[data-astro-cid-wpvy4v7s]{align-items:center;gap:var(--s-5);display:flex}.nav__link[data-astro-cid-wpvy4v7s]{font-size:var(--t-sm);color:var(--text-body);transition:color var(--dur-1) var(--ease-out);padding-block:.35rem;font-weight:500;text-decoration:none;position:relative}.nav__link[data-astro-cid-wpvy4v7s]:hover{color:var(--text)}.nav__link[data-astro-cid-wpvy4v7s].is-active{color:var(--text);font-weight:600}.nav__link[data-astro-cid-wpvy4v7s]:after{content:"";background:var(--accent);transform-origin:0;height:2px;transition:transform var(--dur-2) var(--ease-out);border-radius:2px;position:absolute;bottom:-.15rem;left:0;right:0;transform:scaleX(0)}.nav__link[data-astro-cid-wpvy4v7s]:hover:after,.nav__link[data-astro-cid-wpvy4v7s].is-active:after{transform:scaleX(1)}.nav__cta[data-astro-cid-wpvy4v7s]{padding:.7rem 1.1rem}.nav__voice[data-astro-cid-wpvy4v7s]{font-size:var(--t-sm);color:var(--text-muted);white-space:nowrap;transition:color var(--dur-1) var(--ease-out);align-items:center;gap:.45em;font-weight:500;text-decoration:none;display:inline-flex}.nav__voice[data-astro-cid-wpvy4v7s] svg[data-astro-cid-wpvy4v7s]{width:15px;height:15px}.nav__voice[data-astro-cid-wpvy4v7s]:hover{color:var(--accent)}.nav__toggle[data-astro-cid-wpvy4v7s]{border-radius:var(--radius-sm);cursor:pointer;width:2.75rem;height:2.75rem;color:var(--text);background:0 0;border:0;justify-content:center;align-items:center;margin-right:-.5rem;display:none}.nav__bars[data-astro-cid-wpvy4v7s]{width:20px;display:block}.nav__bars[data-astro-cid-wpvy4v7s] i[data-astro-cid-wpvy4v7s]{height:2px;transition:transform var(--dur-2) var(--ease-out), opacity var(--dur-1) var(--ease-out);background:currentColor;border-radius:2px;display:block}.nav__bars[data-astro-cid-wpvy4v7s] i[data-astro-cid-wpvy4v7s]:first-child{margin-bottom:5px}.nav[data-astro-cid-wpvy4v7s].is-open .nav__bars[data-astro-cid-wpvy4v7s] i[data-astro-cid-wpvy4v7s]:first-child{transform:translateY(3.5px)rotate(45deg)}.nav[data-astro-cid-wpvy4v7s].is-open .nav__bars[data-astro-cid-wpvy4v7s] i[data-astro-cid-wpvy4v7s]:last-child{transform:translateY(-3.5px)rotate(-45deg)}.nav__scrim[data-astro-cid-wpvy4v7s]{z-index:0;opacity:0;transition:opacity var(--dur-3) var(--ease-out);background:#0f172a6b;position:fixed;inset:0}.nav__scrim[data-astro-cid-wpvy4v7s][hidden]{display:none}.nav[data-astro-cid-wpvy4v7s].is-open .nav__scrim[data-astro-cid-wpvy4v7s]{opacity:1}.nav__panel[data-astro-cid-wpvy4v7s]{z-index:1;gap:var(--s-2);overscroll-behavior:contain;max-height:88svh;padding:var(--s-2) var(--gutter) calc(var(--s-5) + env(safe-area-inset-bottom));background:var(--surface);color:var(--text);border-top:1px solid var(--border);transition:transform var(--dur-3) var(--ease-out);touch-action:pan-y;border-radius:18px 18px 0 0;flex-direction:column;display:flex;position:fixed;bottom:0;left:0;right:0;overflow-y:auto;transform:translateY(100%);box-shadow:0 -12px 40px #0f172a2e}.nav[data-astro-cid-wpvy4v7s].is-open .nav__panel[data-astro-cid-wpvy4v7s]{transform:translateY(0)}.nav__panel[data-astro-cid-wpvy4v7s].is-dragging{transition:none}.nav__panel[data-astro-cid-wpvy4v7s][hidden]{display:none}.nav__grip[data-astro-cid-wpvy4v7s]{touch-action:none;justify-content:center;padding:.35rem 0 .6rem;display:flex}.nav__grip[data-astro-cid-wpvy4v7s] i[data-astro-cid-wpvy4v7s]{background:var(--border-strong);border-radius:2px;width:2.6rem;height:4px}.nav__panel-link[data-astro-cid-wpvy4v7s],.nav__tile[data-astro-cid-wpvy4v7s],.nav__dial[data-astro-cid-wpvy4v7s],.nav__panel-cta[data-astro-cid-wpvy4v7s]{opacity:0;transition:opacity var(--dur-3) var(--ease-out), transform var(--dur-3) var(--ease-out);transform:translateY(8px)}.nav[data-astro-cid-wpvy4v7s].is-open [data-astro-cid-wpvy4v7s]:is(.nav__panel-link,.nav__tile,.nav__dial,.nav__panel-cta){opacity:1;transform:none}.nav[data-astro-cid-wpvy4v7s].is-open .nav__panel-link[data-astro-cid-wpvy4v7s]:first-child{transition-delay:40ms}.nav[data-astro-cid-wpvy4v7s].is-open .nav__panel-link[data-astro-cid-wpvy4v7s]:nth-child(2){transition-delay:70ms}.nav[data-astro-cid-wpvy4v7s].is-open .nav__panel-link[data-astro-cid-wpvy4v7s]:nth-child(3){transition-delay:.1s}.nav[data-astro-cid-wpvy4v7s].is-open .nav__panel-link[data-astro-cid-wpvy4v7s]:nth-child(4){transition-delay:.13s}.nav[data-astro-cid-wpvy4v7s].is-open .nav__panel-link[data-astro-cid-wpvy4v7s]:nth-child(5){transition-delay:.16s}.nav[data-astro-cid-wpvy4v7s].is-open .nav__dial[data-astro-cid-wpvy4v7s]{transition-delay:.185s}.nav[data-astro-cid-wpvy4v7s].is-open .nav__tile[data-astro-cid-wpvy4v7s]:first-child{transition-delay:.215s}.nav[data-astro-cid-wpvy4v7s].is-open .nav__tile[data-astro-cid-wpvy4v7s]:nth-child(2){transition-delay:.23s}.nav[data-astro-cid-wpvy4v7s].is-open .nav__tile[data-astro-cid-wpvy4v7s]:nth-child(3){transition-delay:.26s}.nav[data-astro-cid-wpvy4v7s].is-open .nav__tile[data-astro-cid-wpvy4v7s]:nth-child(4){transition-delay:.29s}.nav[data-astro-cid-wpvy4v7s].is-open .nav__tile[data-astro-cid-wpvy4v7s]:nth-child(5){transition-delay:.32s}.nav[data-astro-cid-wpvy4v7s].is-open .nav__panel-cta[data-astro-cid-wpvy4v7s]{transition-delay:.36s}.nav__dial[data-astro-cid-wpvy4v7s]{align-items:center;gap:var(--s-3);margin-block:var(--s-3);padding:var(--s-4);background:var(--accent-tint);border:1px solid var(--hk-blue-100);border-radius:var(--radius);color:var(--accent);text-decoration:none;display:flex}.nav__dial[data-astro-cid-wpvy4v7s] svg[data-astro-cid-wpvy4v7s]{flex:none;width:20px;height:20px}.nav__dial-text[data-astro-cid-wpvy4v7s]{font-size:var(--t-sm);flex-direction:column;gap:.1rem;font-weight:600;display:flex}.nav__dial-num[data-astro-cid-wpvy4v7s]{font-family:var(--font-mono);font-weight:400;font-size:var(--t-xs);font-variant-numeric:tabular-nums;color:var(--text-muted)}.nav__panel-links[data-astro-cid-wpvy4v7s]{flex-direction:column;display:flex}.nav__panel-link[data-astro-cid-wpvy4v7s]{color:var(--text);border-bottom:1px solid var(--border);padding:.8rem 0;font-size:1.0625rem;font-weight:600;text-decoration:none}.nav__panel-link[data-astro-cid-wpvy4v7s].is-active{color:var(--accent)}.nav__services[data-astro-cid-wpvy4v7s]{margin-top:var(--s-3)}.nav__services-label[data-astro-cid-wpvy4v7s]{margin-bottom:var(--s-3);font-family:var(--font-mono);font-size:var(--t-xs);letter-spacing:var(--track-wide);text-transform:uppercase;color:var(--text-muted);font-weight:500;display:block}.nav__tiles[data-astro-cid-wpvy4v7s]{gap:var(--s-2);grid-template-columns:repeat(3,1fr);display:grid}.nav__tile[data-astro-cid-wpvy4v7s]{background:var(--surface-sunken);border:1px solid var(--border);border-radius:var(--radius);min-height:5.4rem;color:var(--text);letter-spacing:var(--track-snug);-webkit-tap-highlight-color:transparent;flex-direction:column;gap:.55rem;padding:.8rem .7rem;font-size:.78rem;font-weight:600;line-height:1.25;text-decoration:none;display:flex}.nav__tile[data-astro-cid-wpvy4v7s] svg[data-astro-cid-wpvy4v7s]{width:22px;height:22px;color:var(--accent)}.nav__tile[data-astro-cid-wpvy4v7s]:active{transform:scale(.97)}.nav__tile[data-astro-cid-wpvy4v7s]:nth-child(4),.nav__tile[data-astro-cid-wpvy4v7s]:nth-child(5){grid-column:span 1}.nav__panel-cta[data-astro-cid-wpvy4v7s]{margin-top:var(--s-4);width:100%}@media (width<=860px){.nav__links[data-astro-cid-wpvy4v7s],.nav__voice[data-astro-cid-wpvy4v7s],.nav__cta[data-astro-cid-wpvy4v7s]{display:none}.nav__toggle[data-astro-cid-wpvy4v7s]{display:inline-flex}}@media (width<=400px){.nav__tiles[data-astro-cid-wpvy4v7s]{grid-template-columns:repeat(2,1fr)}}.footer[data-astro-cid-jo6i4kqk]{padding-top:var(--s-8);background:var(--bg);border-top:1px solid var(--border)}.footer__top[data-astro-cid-jo6i4kqk]{gap:var(--s-7);padding-bottom:var(--s-8);grid-template-columns:1.6fr 1fr 1.3fr 1.2fr;display:grid}.footer__brand[data-astro-cid-jo6i4kqk] p[data-astro-cid-jo6i4kqk]{margin-top:var(--s-3);max-width:32ch;font-size:var(--t-sm);color:var(--text-muted)}.footer__cta[data-astro-cid-jo6i4kqk]{margin-top:var(--s-5)}.footer__heading[data-astro-cid-jo6i4kqk]{font-size:var(--t-xs);font-family:var(--font-mono);letter-spacing:var(--track-wide);text-transform:uppercase;color:var(--text-muted);margin-bottom:var(--s-4);font-weight:500}.footer__col[data-astro-cid-jo6i4kqk] ul[data-astro-cid-jo6i4kqk]{gap:var(--s-3);flex-direction:column;list-style:none;display:flex}.footer__col[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{font-size:var(--t-sm);color:var(--text-body);text-decoration:none}.footer__col[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]:hover{color:var(--accent);text-decoration:underline}.footer__note[data-astro-cid-jo6i4kqk]{font-size:var(--t-sm);color:var(--text-muted)}.footer__col[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk][href^=tel\:]{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.footer__note--under[data-astro-cid-jo6i4kqk]{font-size:var(--t-xs);margin-top:.15rem;display:block}.footer__bottom[data-astro-cid-jo6i4kqk]{justify-content:space-between;align-items:center;gap:var(--s-2) var(--s-5);padding-block:var(--s-5);border-top:1px solid var(--border);font-size:var(--t-xs);color:var(--text-muted);flex-wrap:wrap;display:flex}.footer__meta[data-astro-cid-jo6i4kqk]{align-items:center;gap:var(--s-3);display:inline-flex}.footer__meta[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{color:var(--text-muted)}.footer__meta[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]:hover{color:var(--accent)}.footer__sig[data-astro-cid-jo6i4kqk]{font-family:var(--font-mono);letter-spacing:.02em;align-items:center;display:inline-flex}@media (width>=640px){.footer__sig[data-astro-cid-jo6i4kqk]{min-inline-size:33ch}}.footer__caret[data-astro-cid-jo6i4kqk]{background:var(--accent);width:.45em;height:.95em;margin-left:.3em;animation:1.1s steps(2,start) infinite footer-caret;display:inline-block}@keyframes footer-caret{to{visibility:hidden}}@media (prefers-reduced-motion:reduce){.footer__caret[data-astro-cid-jo6i4kqk]{animation:none}}@media (width<=960px){.footer__top[data-astro-cid-jo6i4kqk]{gap:var(--s-6);grid-template-columns:1fr 1fr}.footer__brand[data-astro-cid-jo6i4kqk]{grid-column:1/-1}}@media (width<=560px){.footer__top[data-astro-cid-jo6i4kqk]{grid-template-columns:1fr}}.bg[data-astro-cid-sor4u3rk]{z-index:-1;pointer-events:none;background:var(--bg);transition:background var(--dur-4) var(--ease-in-out);position:fixed;inset:0;overflow:hidden}html[data-ground=navy] .bg__grid[data-astro-cid-sor4u3rk]{opacity:calc(var(--bg-grid-opacity) * 1.6)}html[data-ground=navy] .bg__lines[data-astro-cid-sor4u3rk]{stroke:var(--hk-blue-400);opacity:calc(var(--bg-line-opacity) * 1.4)}html[data-ground=navy] .bg__glow[data-astro-cid-sor4u3rk]{opacity:calc(var(--bg-glow-1-opacity) * 2.2)}.bg__glow[data-astro-cid-sor4u3rk]{background:radial-gradient(closest-side, var(--bg-glow-color), transparent);border-radius:50%;position:absolute}.bg__glow--1[data-astro-cid-sor4u3rk]{width:62rem;height:62rem;opacity:var(--bg-glow-1-opacity)}.bg__glow--2[data-astro-cid-sor4u3rk]{width:44rem;height:44rem;opacity:var(--bg-glow-2-opacity)}.bg__grid[data-astro-cid-sor4u3rk]{opacity:var(--bg-grid-opacity);background-image:linear-gradient(to right, var(--bg-grid-color) 1px, transparent 1px), linear-gradient(to bottom, var(--bg-grid-color) 1px, transparent 1px);background-size:72px 72px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(120% 90% at 70% 20%,#000 0%,#0000 78%);mask-image:radial-gradient(120% 90% at 70% 20%,#000 0%,#0000 78%)}.bg__art[data-astro-cid-sor4u3rk]{width:100%;height:100%;position:absolute;inset:0}.bg__lines[data-astro-cid-sor4u3rk]{fill:none;stroke:var(--bg-line-color);stroke-width:1.25px;opacity:var(--bg-line-opacity)}.bg__lines[data-astro-cid-sor4u3rk] rect[data-astro-cid-sor4u3rk]{stroke:var(--bg-grid-color)}.bg__node[data-astro-cid-sor4u3rk]{fill:var(--bg-node-color);stroke:none}.bg__pulse[data-astro-cid-sor4u3rk]{fill:none;stroke:var(--hk-blue);stroke-width:1.5px;stroke-linecap:round;stroke-dasharray:10 100;stroke-dashoffset:110px;opacity:0}.js .bg__pulse[data-astro-cid-sor4u3rk]{animation:9s linear infinite bg-travel}.js .bg__pulse--b[data-astro-cid-sor4u3rk]{animation-delay:3.1s}.js .bg__pulse--c[data-astro-cid-sor4u3rk]{animation-delay:6.3s}@keyframes bg-travel{0%{stroke-dashoffset:110px;opacity:0}4%{opacity:.45}26%{stroke-dashoffset:0;opacity:.45}30%{stroke-dashoffset:0;opacity:0}to{stroke-dashoffset:0;opacity:0}}.bg--home[data-astro-cid-sor4u3rk] .bg__glow--1[data-astro-cid-sor4u3rk]{top:-20rem;right:-18rem}.bg--home[data-astro-cid-sor4u3rk] .bg__glow--2[data-astro-cid-sor4u3rk]{opacity:calc(var(--bg-glow-2-opacity) * .7);top:34rem;left:-16rem}.bg--home[data-astro-cid-sor4u3rk] .bg__art[data-astro-cid-sor4u3rk]{-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 44%);mask-image:linear-gradient(90deg,#0000 0%,#000 44%)}.bg--services[data-astro-cid-sor4u3rk] .bg__glow--1[data-astro-cid-sor4u3rk]{opacity:calc(var(--bg-glow-1-opacity) * .8);top:-24rem;right:-20rem}.bg--services[data-astro-cid-sor4u3rk] .bg__glow--2[data-astro-cid-sor4u3rk]{bottom:-14rem;left:-12rem}.bg--services[data-astro-cid-sor4u3rk] .bg__art[data-astro-cid-sor4u3rk]{-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 52%);mask-image:linear-gradient(90deg,#0000 0%,#000 52%)}.bg--about[data-astro-cid-sor4u3rk] .bg__glow--1[data-astro-cid-sor4u3rk]{top:12rem;right:-26rem}.bg--about[data-astro-cid-sor4u3rk] .bg__glow--2[data-astro-cid-sor4u3rk]{top:-12rem;left:-18rem}.bg--about[data-astro-cid-sor4u3rk] .bg__art[data-astro-cid-sor4u3rk]{-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 46%);mask-image:linear-gradient(90deg,#0000 0%,#000 46%)}.bg--about[data-astro-cid-sor4u3rk] .bg__orbit[data-astro-cid-sor4u3rk]{fill:var(--bg-node-color);opacity:0;offset-rotate:0deg}.bg--about[data-astro-cid-sor4u3rk] .bg__orbit--a[data-astro-cid-sor4u3rk]{offset-path:path("M980 760 A320 320 0 0 1 1300 440")}.bg--about[data-astro-cid-sor4u3rk] .bg__orbit--b[data-astro-cid-sor4u3rk]{offset-path:path("M1040 780 A260 260 0 0 1 1300 520")}.js .bg--about[data-astro-cid-sor4u3rk] .bg__orbit--a[data-astro-cid-sor4u3rk]{animation:40s linear infinite bg-about-orbit}.js .bg--about[data-astro-cid-sor4u3rk] .bg__orbit--b[data-astro-cid-sor4u3rk]{animation:65s linear -24s infinite bg-about-orbit}@keyframes bg-about-orbit{0%{offset-distance:0%;opacity:0}6%{opacity:.45}94%{opacity:.45}to{offset-distance:100%;opacity:0}}@media (prefers-reduced-motion:reduce){.bg--about[data-astro-cid-sor4u3rk] .bg__orbit[data-astro-cid-sor4u3rk]{animation:none}}.bg--contact[data-astro-cid-sor4u3rk] .bg__glow--1[data-astro-cid-sor4u3rk]{opacity:calc(var(--bg-glow-1-opacity) * .85);top:4rem;right:-22rem}.bg--contact[data-astro-cid-sor4u3rk] .bg__glow--2[data-astro-cid-sor4u3rk]{bottom:-18rem;left:-14rem}.bg--contact[data-astro-cid-sor4u3rk] .bg__art[data-astro-cid-sor4u3rk]{-webkit-mask-image:linear-gradient(90deg,#000 0% 38%,#0000 62%);mask-image:linear-gradient(90deg,#000 0% 38%,#0000 62%)}.bg__art[data-astro-cid-sor4u3rk].bg__art--m{display:none;-webkit-mask-image:none;mask-image:none}@media (width<=860px){.bg__art[data-astro-cid-sor4u3rk]{display:none}.bg__art[data-astro-cid-sor4u3rk].bg__art--m{display:block}.bg__grid[data-astro-cid-sor4u3rk]{opacity:calc(var(--bg-grid-opacity) * .8);background-size:48px 48px}.bg__glow--1[data-astro-cid-sor4u3rk]{width:34rem;height:34rem;top:-10rem;right:-12rem}.bg__glow--2[data-astro-cid-sor4u3rk]{width:26rem;height:26rem}}.stickycta[data-astro-cid-bjs4jpu3]{z-index:90;align-items:center;gap:var(--s-3);padding:var(--s-3) var(--gutter);padding-bottom:calc(var(--s-3) + env(safe-area-inset-bottom,0px));background:color-mix(in srgb, var(--hk-off-white) 96%, transparent);border-top:1px solid var(--border);transition:transform .32s var(--ease-out);display:none;position:fixed;bottom:0;left:0;right:0;transform:translateY(110%);box-shadow:0 -4px 16px #0f172a14}.stickycta[data-astro-cid-bjs4jpu3].is-shown{transform:none}.stickycta[data-astro-cid-bjs4jpu3][hidden]{display:none}.stickycta__btn[data-astro-cid-bjs4jpu3]{flex:1}.stickycta__dial[data-astro-cid-bjs4jpu3]{border:1px solid var(--hk-blue-100);border-radius:var(--radius-sm);background:var(--accent-tint);width:2.75rem;height:2.75rem;color:var(--accent);flex:none;place-items:center;display:grid}.stickycta__close[data-astro-cid-bjs4jpu3]{border-radius:var(--radius-sm);width:2.5rem;height:2.5rem;color:var(--text-muted);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;display:grid}.stickycta__close[data-astro-cid-bjs4jpu3]:hover{color:var(--text)}@media (width>=861px){.stickycta[data-astro-cid-bjs4jpu3]{display:none!important}}@media (width<=860px){.stickycta[data-astro-cid-bjs4jpu3]:not([hidden]){display:flex}}@media (prefers-reduced-motion:reduce){.stickycta[data-astro-cid-bjs4jpu3]{transition:none}}:root{--hk-off-white:#f8fafc;--hk-navy:#0f172a;--hk-blue:#2563eb;--hk-gray:#cbd5e1;--hk-white:#fff;--hk-slate-100:#f1f5f9;--hk-slate-200:#e2e8f0;--hk-slate-400:#94a3b8;--hk-slate-500:#64748b;--hk-slate-600:#475569;--hk-slate-700:#334155;--hk-slate-800:#1e293b;--hk-blue-50:#eff6ff;--hk-blue-100:#dbeafe;--hk-blue-500:#3b82f6;--hk-blue-700:#1d4ed8;--bg:var(--hk-off-white);--surface:var(--hk-white);--surface-sunken:var(--hk-slate-100);--text:var(--hk-navy);--text-body:var(--hk-slate-700);--text-muted:var(--hk-slate-500);--border:var(--hk-slate-200);--border-strong:var(--hk-gray);--accent:var(--hk-blue);--accent-hover:var(--hk-blue-700);--accent-tint:var(--hk-blue-50);--accent-ink:var(--hk-white);--bg-glow-1-opacity:.06;--bg-glow-2-opacity:.045;--bg-grid-opacity:.04;--bg-line-opacity:.16;--bg-glow-color:var(--hk-blue);--bg-grid-color:var(--hk-slate-400);--bg-line-color:var(--hk-blue);--bg-node-color:var(--hk-blue);--font-sans:"IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--t-xs:.75rem;--t-sm:.875rem;--t-base:1rem;--t-lg:clamp(1.0625rem, .2vw + 1rem, 1.1875rem);--t-xl:clamp(1.25rem, .4vw + 1.1rem, 1.5rem);--t-2xl:clamp(1.5rem, .9vw + 1.25rem, 2rem);--t-3xl:clamp(1.875rem, 1.6vw + 1.4rem, 2.75rem);--t-4xl:clamp(2.25rem, 2.6vw + 1.5rem, 3.75rem);--track-tight:-.022em;--track-snug:-.012em;--track-wide:.09em;--s-1:.25rem;--s-2:.5rem;--s-3:.75rem;--s-4:1rem;--s-5:1.5rem;--s-6:2rem;--s-7:3rem;--s-8:4rem;--s-9:6rem;--s-10:8rem;--section-y:clamp(4rem, 8vw, 7.5rem);--gutter:clamp(1.25rem, 4vw, 3.5rem);--container:1200px;--measure:62ch;--radius-sm:6px;--radius:10px;--radius-lg:16px;--shadow-sm:0 1px 2px #0f172a0d;--shadow:0 1px 3px #0f172a0f, 0 4px 12px #0f172a0d;--shadow-lg:0 2px 4px #0f172a0a, 0 12px 32px #0f172a14;--dur-1:.12s;--dur-2:.22s;--dur-3:.42s;--dur-4:.65s;--dur-5:.9s;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--ease-linear:linear;--dur-fast:var(--dur-1);--dur:var(--dur-2);--ground-base:var(--hk-off-white);--ground-tint:var(--hk-slate-100);--ground-deep:#e6edf8;--ground-navy:var(--hk-navy);--hk-blue-400:#60a5fa}html[data-ground=tint]{--bg:var(--ground-tint)}html[data-ground=deep]{--bg:var(--ground-deep)}html[data-ground=navy]{--bg:var(--ground-navy)}.theme-dark,html[data-ground=navy] [data-nav]{--bg:var(--hk-navy);--surface:var(--hk-slate-800);--surface-sunken:#16223c;--text:var(--hk-off-white);--text-body:var(--hk-gray);--text-muted:var(--hk-slate-400);--border:#94a3b838;--border-strong:#94a3b866;--accent:var(--hk-blue-500);--accent-hover:var(--hk-blue-400);--accent-tint:#3b82f624;--accent-ink:var(--hk-white);--shadow-sm:0 1px 2px #02061766;--shadow:0 1px 3px #02061773, 0 4px 12px #02061759;--shadow-lg:0 2px 4px #02061766, 0 12px 32px #02061780;color:var(--text-body)}.theme-dark .btn--primary{background:var(--hk-blue)}.theme-dark .btn--primary:hover{background:var(--hk-blue-700)}.theme-dark .eyebrow{color:var(--hk-blue-400)}.theme-dark{position:relative}.theme-dark:after{content:"";z-index:0;pointer-events:none;opacity:.07;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.9 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:180px 180px;position:absolute;inset:0}@media (width<=900px){.theme-dark:after{mix-blend-mode:normal;opacity:.05}}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:5.5rem}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-stopped{overflow:hidden}body{background:var(--bg);transition:background var(--dur-4) var(--ease-in-out);color:var(--text-body);font-family:var(--font-sans);font-size:var(--t-base);-webkit-font-smoothing:antialiased;margin:0;line-height:1.65;overflow-x:hidden}img,svg,video{max-width:100%;display:block}a{color:var(--accent);text-underline-offset:.2em;text-decoration-thickness:1px}h1,h2,h3,h4{color:var(--text);letter-spacing:var(--track-tight);text-wrap:balance;margin:0;font-weight:700;line-height:1.15}h1{font-size:var(--t-4xl)}h2{font-size:var(--t-3xl)}h3{font-size:var(--t-xl);letter-spacing:var(--track-snug)}h4{font-size:var(--t-lg);letter-spacing:var(--track-snug)}p{text-wrap:pretty;margin:0}ul,ol{margin:0;padding:0}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}::selection{background:var(--hk-blue-100);color:var(--hk-navy)}:root{accent-color:var(--accent);caret-color:var(--accent)}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{left:var(--s-4);z-index:200;background:var(--surface);color:var(--text);padding:var(--s-3) var(--s-4);border-radius:var(--radius-sm);box-shadow:var(--shadow);transition:top var(--dur) var(--ease-out);font-weight:600;text-decoration:none;position:absolute;top:-4rem}.skip-link:focus{top:var(--s-4)}.container{width:100%;max-width:var(--container);padding-inline:var(--gutter);margin-inline:auto}.section{padding-block:var(--section-y)}.stack>*+*{margin-top:var(--s-4)}.lede{font-size:var(--t-lg);color:var(--text-body);max-width:var(--measure);line-height:1.6}.eyebrow{font-family:var(--font-mono);font-size:var(--t-xs);letter-spacing:var(--track-wide);text-transform:uppercase;color:var(--accent);margin-bottom:var(--s-3);font-weight:500;display:block}.section-head{max-width:46rem;margin-bottom:var(--s-8)}.section-head p{margin-top:var(--s-4);font-size:var(--t-lg);color:var(--text-body)}.section-head h2:after{content:attr(data-chapter);height:.8rem;font-family:var(--font-mono);font-size:var(--t-xs);letter-spacing:.06em;color:var(--text-muted);background:linear-gradient(var(--accent), var(--accent)) 0 50% / 5.5rem 1px no-repeat, linear-gradient(var(--accent), var(--accent)) 0 50% / 1px .5rem no-repeat, linear-gradient(var(--accent), var(--accent)) 5.5rem 50% / 1px .5rem no-repeat;opacity:.85;margin-top:.85rem;padding-left:6.4rem;font-weight:500;line-height:.8rem;display:block}.js .section-head h2:after{clip-path:inset(0 100% 0 0);transition:clip-path var(--dur-5) var(--ease-out) .18s}.js .section-head.is-in h2:after,.js .is-in .section-head h2:after{clip-path:inset(0)}.btn{justify-content:center;align-items:center;gap:var(--s-2);font-family:inherit;font-size:var(--t-sm);white-space:nowrap;border-radius:var(--radius-sm);cursor:pointer;transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);border:1px solid #0000;padding:.875rem 1.375rem;font-weight:600;line-height:1;text-decoration:none;display:inline-flex}.btn:active{transform:translateY(1px)}.btn--primary{background:var(--accent);color:var(--accent-ink);position:relative;overflow:hidden}.btn--primary:hover{background:var(--accent-hover)}.btn--primary:after{content:"";pointer-events:none;background:linear-gradient(105deg,#0000 42%,#ffffff52 50%,#0000 58%);position:absolute;inset:0;transform:translate(-130%)}@media (hover:hover){.btn--primary:hover{transform:translateY(-1px);box-shadow:0 4px 14px #2563eb47}.btn--primary:hover:after{transition:transform var(--dur-4) var(--ease-out);transform:translate(130%)}.btn--primary:active{transform:translateY(1px)}.lift{transition:transform var(--dur) var(--ease-out), box-shadow var(--dur) var(--ease-out), border-color var(--dur) var(--ease-out)}.lift:hover{border-color:var(--hk-blue-100);box-shadow:var(--shadow-lg);transform:translateY(-3px)}.theme-dark .lift:hover{border-color:var(--border-strong)}}@media (hover:hover) and (pointer:fine){.js .lift{position:relative}.js .lift:before{content:"";border-radius:inherit;background:radial-gradient(230px circle at var(--mx,50%) var(--my,50%), #2563eb14, transparent 65%);opacity:0;transition:opacity var(--dur-2) var(--ease-out);pointer-events:none;position:absolute;inset:0}.js .lift:hover:before{opacity:1}}@media (hover:none){.btn,.link-arrow,.post,.faq__item summary,.form-details summary,.nav__panel-link{-webkit-tap-highlight-color:transparent;transition:transform var(--dur-1) var(--ease-out)}.btn:active{transform:scale(.97)}.post:active,.faq__item summary:active,.form-details summary:active{transform:scale(.985)}.link-arrow:active,.nav__panel-link:active{transform:translate(3px)}}@supports (interpolate-size:allow-keywords){:root{interpolate-size:allow-keywords}}.faq__item::details-content,.form-details::details-content{block-size:0;transition:content-visibility var(--dur-3) allow-discrete, block-size var(--dur-3) var(--ease-out);overflow-y:clip}.faq__item[open]::details-content,.form-details[open]::details-content{block-size:auto}.btn--secondary{background:var(--surface);color:var(--text);border-color:var(--border-strong)}.btn--secondary:hover{border-color:var(--accent);color:var(--accent)}.link-arrow{font-weight:600;font-size:var(--t-sm);color:var(--accent);align-items:center;gap:.4em;text-decoration:none;display:inline-flex}.link-arrow:hover{text-decoration:underline}.link-arrow svg{transition:transform var(--dur-fast) var(--ease-out)}.link-arrow:hover svg{transform:translate(2px)}.js [data-reveal]{opacity:0;transition:opacity var(--dur-4) var(--ease-out), transform var(--dur-4) var(--ease-out);transform:translateY(16px)}.js [data-reveal].is-in{opacity:1;transform:none}.js [data-stagger] :is(li,.faq__item){opacity:0;transition:opacity var(--dur-3) var(--ease-out), transform var(--dur-3) var(--ease-out);transform:translateY(10px)}.js [data-stagger].is-in :is(li,.faq__item){opacity:1;transform:none}.js [data-stagger].is-in :is(li,.faq__item):first-child{transition-delay:40ms}.js [data-stagger].is-in :is(li,.faq__item):nth-child(2){transition-delay:.1s}.js [data-stagger].is-in :is(li,.faq__item):nth-child(3){transition-delay:.16s}.js [data-stagger].is-in :is(li,.faq__item):nth-child(4){transition-delay:.22s}.js [data-stagger].is-in :is(li,.faq__item):nth-child(5){transition-delay:.28s}.js [data-stagger].is-in :is(li,.faq__item):nth-child(6){transition-delay:.34s}.js [data-stagger].is-in :is(li,.faq__item):nth-child(7){transition-delay:.4s}.js [data-stagger].is-in :is(li,.faq__item):nth-child(8){transition-delay:.46s}.js [data-stagger].is-in :is(li,.faq__item):nth-child(9){transition-delay:.52s}.js [data-stagger].is-in :is(li,.faq__item):nth-child(n+10){transition-delay:.58s}.hk-cursor{z-index:9999;pointer-events:none;opacity:0;transition:opacity var(--dur-2) var(--ease-out);position:fixed;top:0;left:0}.hk-cursor.is-on{opacity:1}.hk-cursor.is-hidden{opacity:0}.hk-cursor__dot,.hk-cursor__ring,.hk-cursor__label{will-change:transform;position:absolute;top:0;left:0}.hk-cursor__dot{background:var(--hk-blue);width:6px;height:6px;transition:opacity var(--dur-1) var(--ease-out), transform 0s;border-radius:50%;margin:-3px 0 0 -3px}.hk-cursor__ring{box-sizing:border-box;border:1.5px solid var(--hk-blue);opacity:.7;width:28px;height:28px;transition:width var(--dur-2) var(--ease-out), height var(--dur-2) var(--ease-out), margin var(--dur-2) var(--ease-out), border-radius var(--dur-2) var(--ease-out), opacity var(--dur-2) var(--ease-out), border-color var(--dur-2) var(--ease-out);border-radius:50%;margin:-14px 0 0 -14px;translate:0}.hk-cursor.is-dock .hk-cursor__ring{opacity:.95;margin:0;translate:-50% -50%}.hk-cursor.is-dock .hk-cursor__dot{opacity:0}.hk-cursor.is-down .hk-cursor__ring{border-color:var(--hk-blue-700);opacity:1}.hk-cursor.is-cross .hk-cursor__ring{opacity:.85;border-style:dashed;border-radius:4px;width:34px;height:34px;margin:-17px 0 0 -17px}.hk-cursor.is-cross .hk-cursor__ring:before,.hk-cursor.is-cross .hk-cursor__ring:after{content:"";background:var(--hk-blue);opacity:.6;position:absolute}.hk-cursor.is-cross .hk-cursor__ring:before{width:1px;margin-left:-.5px;top:-8px;bottom:-8px;left:50%}.hk-cursor.is-cross .hk-cursor__ring:after{height:1px;margin-top:-.5px;top:50%;left:-8px;right:-8px}.hk-cursor__label{font-family:var(--font-mono);letter-spacing:.05em;color:var(--hk-blue);white-space:nowrap;opacity:0;transition:opacity var(--dur-2) var(--ease-out);margin:14px 0 0 22px;font-size:.66rem;font-weight:500;line-height:1}.hk-cursor.is-cross .hk-cursor__label{opacity:1}@view-transition{navigation:auto}::view-transition-old(root),::view-transition-new(root){animation-duration:.18s}::view-transition-group(site-nav){animation-duration:.01ms}@media (prefers-reduced-motion:reduce){@view-transition{navigation:none}html{scroll-behavior:auto}.js [data-reveal],.js [data-stagger] :is(li,.faq__item){opacity:1;transition:none;transform:none}*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}
