@font-face{font-family:Geist;src:url(/fonts/Geist-Regular.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Geist;src:url(/fonts/Geist-Medium.woff2)format("woff2");font-weight:500;font-display:swap}@font-face{font-family:Geist;src:url(/fonts/Geist-SemiBold.woff2)format("woff2");font-weight:600;font-display:swap}@font-face{font-family:Geist;src:url(/fonts/Geist-Bold.woff2)format("woff2");font-weight:700;font-display:swap}:root{--bg:#f7f7f5;--ink:#0d0d0e;--ink-soft:#3d3d40;--mute:#6c6c70;--line:#e3e3e0;--glass:#ffffffd1;--acc:#2b2bff;--u:8px;--r:20px;--r-sm:10px;--wrap:1240px;--measure:62ch;--font:"Geist", system-ui, -apple-system, "Segoe UI", sans-serif;--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-in-out:cubic-bezier(.77, 0, .175, 1);--dur:.25s;--mat-thin:#ffffff9e;--mat-regular:#ffffffd1;--mat-thick:#ffffffed;--blur-thin:saturate(180%) blur(12px);--blur-regular:saturate(180%) blur(20px);--blur-thick:saturate(190%) blur(30px);--lift-0:0 1px 2px #0d0d0e0d, 0 8px 24px -16px #0d0d0e40;--lift-1:0 2px 6px #0d0d0e0f, 0 28px 50px -30px #0d0d0e52}*,:before,:after{box-sizing:border-box}html{background:var(--bg);color:var(--ink);font-family:var(--font);-webkit-text-size-adjust:100%;scroll-behavior:smooth;font-size:100%;line-height:1.5}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important}}body{min-height:100dvh;padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);flex-direction:column;margin:0;display:flex;overflow-x:clip}html.has-cursor body,html.has-cursor a,html.has-cursor button,html.has-cursor input,html.has-cursor textarea,html.has-cursor label{cursor:none}html.pre [data-rise]>*,html.pre [data-cards]>*,html.pre [data-reveal]{opacity:0;animation:1ms linear 1s forwards failsafe}@keyframes failsafe{to{opacity:1}}img,svg{max-width:100%;display:block}a{color:inherit;text-decoration:none}p{margin:0}h1,h2,h3{letter-spacing:-.02em;margin:0;font-weight:600;line-height:1.1}:focus-visible{outline:2px solid var(--acc);outline-offset:3px;border-radius:4px}canvas.field{z-index:0;pointer-events:none;width:100%;height:100%;display:block;position:fixed;inset:0}.cur-dot{background:var(--ink);pointer-events:none;z-index:9999;will-change:transform;border-radius:50%;width:8px;height:8px;margin:-4px 0 0 -4px;position:fixed;top:0;left:0}.cur-ring{pointer-events:none;z-index:9998;opacity:.9;will-change:transform;width:32px;height:32px;margin:-16px 0 0 -16px;position:fixed;top:0;left:0}.cur-ring:after{content:"";border:1.5px solid var(--ink);transform-origin:50%;transition:transform .26s var(--ease-out), opacity .2s var(--ease-out), border-radius .2s var(--ease-out);border-radius:50%;position:absolute;inset:0}.cur-ring.on:after{opacity:.5;transform:scale(1.38)}.cur-ring.text:after{opacity:.7;border-radius:40%;transform:scale(.14,.9)}.cur-ring.down:after{opacity:.85;transform:scale(.78)}.cur-ring.on.down:after{opacity:.7;transform:scale(1.1)}main{z-index:1;flex:1;position:relative}.wrap{width:min(100% - 10vw, var(--wrap));margin-inline:auto}@media (width<=640px){.wrap{width:min(100% - 40px, var(--wrap))}}:target{scroll-margin-top:108px}@media (width<=560px){:target{scroll-margin-top:128px}}.skip{background:var(--ink);color:#fff;z-index:100;max-width:calc(100vw - 48px);transition:transform .2s var(--ease-out);border-radius:999px;padding:10px 16px;position:fixed;top:0;left:24px;right:auto;transform:translateY(-150%)}.skip:focus{transform:translateY(16px)}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.btn{background:var(--ink);color:#fff;border:1px solid var(--ink);min-height:44px;box-shadow:var(--lift-0);transition:background .2s var(--ease-out), box-shadow .2s var(--ease-out);-webkit-tap-highlight-color:transparent;touch-action:manipulation;border-radius:999px;align-items:center;gap:10px;padding:14px 22px;font-size:15px;font-weight:500;display:inline-flex}@media (hover:hover) and (pointer:fine){.btn:hover{box-shadow:var(--lift-1);background:#232326}}.btn.ghost{background:var(--mat-regular);color:var(--ink);border-color:var(--line);-webkit-backdrop-filter:var(--blur-thin)}@media (hover:hover) and (pointer:fine){.btn.ghost:hover{background:var(--mat-thick)}}.card{--pad:16px;background:var(--mat-regular);-webkit-backdrop-filter:var(--blur-regular);border:1px solid var(--line);border-radius:var(--r);padding:var(--pad);box-shadow:var(--lift-0);transition:box-shadow var(--dur) var(--ease-out), background var(--dur) var(--ease-out);-webkit-tap-highlight-color:transparent;touch-action:manipulation}@media (hover:hover) and (pointer:fine){a.card:hover{box-shadow:var(--lift-1);background:var(--mat-thick)}}.card .shot{border-radius:max(6px, calc(var(--r) - var(--pad)));background:#fff;border:1px solid #0000000d;overflow:hidden}.card .shot img{width:100%;height:auto}.prose{max-width:var(--measure);color:var(--ink-soft);font-size:17px;line-height:1.6}.prose p+p{margin-top:16px}.prose ul{margin:12px 0 0;padding-left:1.2em}.prose li+li{margin-top:6px}.prose h2{color:var(--ink);margin:32px 0 8px;font-size:20px}.prose a{text-underline-offset:.18em;text-decoration:underline #0000004d}.prose a:hover{text-decoration-color:var(--ink)}.section{padding-block:6vh 10vh}.section-head{text-align:center;max-width:820px;margin:0 auto 6vh}.section-head h1{letter-spacing:-.035em;font-size:clamp(34px,5vw,64px);line-height:1}.section-head .lead{color:var(--mute);max-width:48ch;margin:18px auto 0;font-size:18px;line-height:1.5}.mute{color:var(--mute)}.top[data-astro-cid-4zcwgehy]{z-index:20;padding-block:22px;padding-top:max(22px, env(safe-area-inset-top));justify-content:space-between;align-items:center;gap:16px;display:flex;position:sticky;top:0}.top[data-astro-cid-4zcwgehy]:before{content:"";background:var(--mat-thin);width:100vw;-webkit-backdrop-filter:var(--blur-thick);opacity:0;transition:opacity .26s var(--ease-out), border-color .26s var(--ease-out);pointer-events:none;border-bottom:1px solid #0000;margin-left:-50vw;position:absolute;top:0;bottom:0;left:50%}.top[data-astro-cid-4zcwgehy].lifted:before{opacity:1;border-bottom-color:var(--line)}.top[data-astro-cid-4zcwgehy]>[data-astro-cid-4zcwgehy]:not(.skip){position:relative}.name[data-astro-cid-4zcwgehy]{letter-spacing:-.01em;white-space:nowrap;align-items:center;min-height:44px;font-size:16px;font-weight:600;display:inline-flex}nav[data-astro-cid-4zcwgehy]{background:var(--mat-regular);-webkit-backdrop-filter:var(--blur-regular);border:1px solid var(--line);box-shadow:var(--lift-0);border-radius:999px;gap:4px;padding:4px;display:flex}nav[data-astro-cid-4zcwgehy] a[data-astro-cid-4zcwgehy]{white-space:nowrap;min-height:36px;transition:background .2s var(--ease-out), color .2s var(--ease-out);-webkit-tap-highlight-color:transparent;touch-action:manipulation;border-radius:999px;align-items:center;padding:8px 14px;font-size:14px;font-weight:500;display:inline-flex}nav[data-astro-cid-4zcwgehy] a[data-astro-cid-4zcwgehy].on{background:var(--ink);color:#fff}@media (hover:hover) and (pointer:fine){nav[data-astro-cid-4zcwgehy] a[data-astro-cid-4zcwgehy]:not(.on):hover{background:#0000000d}}nav[data-astro-cid-4zcwgehy] a[data-astro-cid-4zcwgehy].lang{color:var(--mute);font-variant-numeric:tabular-nums}@media (width<=560px){.top[data-astro-cid-4zcwgehy]{padding-block:14px 8px;padding-top:max(14px, env(safe-area-inset-top));flex-direction:column;align-items:stretch;gap:10px}.name[data-astro-cid-4zcwgehy]{justify-content:center;min-height:36px}nav[data-astro-cid-4zcwgehy]{justify-content:center}nav[data-astro-cid-4zcwgehy] a[data-astro-cid-4zcwgehy]{flex:auto;justify-content:center;padding:8px 12px;font-size:14px}}@media (width<=340px){nav[data-astro-cid-4zcwgehy] a[data-astro-cid-4zcwgehy]{padding:8px;font-size:13px}}.foot[data-astro-cid-3p4psyke]{z-index:1;color:var(--mute);flex-wrap:wrap;justify-content:center;align-items:center;gap:12px 28px;padding-block:24px 36px;font-size:14px;display:flex;position:relative}.foot[data-astro-cid-3p4psyke] nav[data-astro-cid-3p4psyke]{flex-wrap:wrap;justify-content:center;gap:8px 22px;display:flex}.foot[data-astro-cid-3p4psyke] nav[data-astro-cid-3p4psyke] a[data-astro-cid-3p4psyke]{align-items:center;min-height:44px;display:inline-flex}@media (hover:hover) and (pointer:fine){.foot[data-astro-cid-3p4psyke] nav[data-astro-cid-3p4psyke] a[data-astro-cid-3p4psyke]:hover{color:var(--ink)}}
