.spider-hero{--pad-x:clamp(16px, 5vw, 72px);--pad-y:clamp(16px, 3vw, 40px);position:fixed;inset:0;overflow:hidden}.hero-canvas{width:100%;height:100%;display:block;position:fixed;inset:0}.spider-hero .hero-copy{text-align:center;z-index:2;pointer-events:none;width:min(92vw,680px);text-shadow:0 0 22px var(--bg), 0 0 6px var(--bg);transition:opacity .35s;position:fixed;top:57vh;left:50%;transform:translate(-50%)}.spider-hero .hero-copy a{pointer-events:auto}.spider-hero .eyebrow{font-family:var(--font-jetbrains-mono), monospace;letter-spacing:.04em;color:var(--muted);font-size:.8rem}.spider-hero h1{font-family:var(--font-fraunces), serif;letter-spacing:-.025em;font-variation-settings:"opsz" 144;margin-top:.35em;font-size:clamp(2.1rem,5vw,3.8rem);font-weight:300;line-height:1.04}.spider-hero h1 em{padding-left:.12em;font-weight:600}.spider-hero .lede{text-wrap:balance;max-width:32em;margin:.9rem auto 0;font-size:clamp(1rem,1.6vw,1.15rem);line-height:1.5}.spider-hero .links{flex-wrap:wrap;justify-content:center;align-items:center;gap:1.6rem;margin-top:1.3rem;display:flex}.spider-hero .links a{color:var(--ink);padding-bottom:2px;font-weight:500;text-decoration:none;position:relative}.spider-hero .links a:after{content:"";background:var(--rust);transform-origin:0;height:2px;transition:transform .35s cubic-bezier(.2,.8,.2,1);position:absolute;inset:auto 0 -2px;transform:scaleX(0)}.spider-hero .links a:hover:after,.spider-hero .links a:focus-visible:after{transform:scaleX(1)}.spider-hero .copy{transition:opacity .35s,transform .35s}.spider-hero .copy.is-out{opacity:0;transform:translateY(-10px)}.spider-hero .threads{right:var(--pad-x);z-index:4;transition:opacity .35s;position:fixed;top:50%;translate:0 -50%}.spider-hero .threads ol{gap:4px;padding:0;list-style:none;display:grid}.spider-hero .threads button{width:100%;min-height:44px;color:var(--muted);font:500 .82rem/1 var(--font-jetbrains-mono), monospace;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:6px 0;transition:color .25s;display:flex}.spider-hero .threads button:before{content:"";opacity:.5;background:currentColor;border-radius:2px;width:14px;height:2px;transition:width .35s cubic-bezier(.2,.8,.2,1),opacity .25s,background-color .25s}.spider-hero .threads .n{opacity:.6;font-size:.68rem}.spider-hero .threads button:hover,.spider-hero .threads button:focus-visible,.spider-hero .threads button[aria-current=true]{color:var(--ink)}.spider-hero .threads button[aria-current=true]:before{opacity:1;background:var(--rust);width:30px}.spider-hero .hint span{display:inline-block}.spider-hero .hint{left:50%;bottom:calc(var(--pad-y) + 4px);z-index:4;font:500 .74rem/1 var(--font-jetbrains-mono), monospace;letter-spacing:.04em;color:var(--muted);transition:opacity .35s;position:fixed;translate:-50%}@media (pointer:fine){html.hero-cursor body,html.hero-cursor a,html.hero-cursor button{cursor:none}}.spider-hero .cursor,.spider-hero .cursor-dot{pointer-events:none;z-index:60;opacity:0;border-radius:50%;transition:opacity .3s;position:fixed;top:0;left:0}html.hero-cursor .spider-hero .cursor.visible,html.hero-cursor .spider-hero .cursor-dot.visible{opacity:1}@media (pointer:fine){html.hero-cursor .site-top [data-wordmark],html.hero-cursor .site-top [data-actions]{cursor:auto}html.hero-cursor .site-top [data-wordmark],html.hero-cursor .site-top [data-actions] a,html.hero-cursor .site-top [data-actions] button,html.hero-cursor .critter-hit,html.hero-cursor .critter-exhibit button{cursor:pointer}}:is(html.hero-cursor:has(.critter-hit:hover,.critter-exhibit[open]) .spider-hero .cursor.visible,html.hero-cursor:has(.critter-hit:hover,.critter-exhibit[open]) .spider-hero .cursor-dot.visible),:is(html.hero-cursor:has(.site-top [data-wordmark]:hover,.site-top [data-actions]:hover) .spider-hero .cursor.visible,html.hero-cursor:has(.site-top [data-wordmark]:hover,.site-top [data-actions]:hover) .spider-hero .cursor-dot.visible){opacity:0}.spider-hero .cursor{border:1.5px solid var(--ink);place-items:center;width:34px;height:34px;margin:-17px 0 0 -17px;transition:opacity .3s,width .3s,height .3s,margin .3s,background-color .3s,border-color .3s;display:grid}.spider-hero .cursor span{font:500 10px/1 var(--font-jetbrains-mono), monospace;letter-spacing:.04em;color:var(--bg);opacity:0;transition:opacity .2s}.spider-hero .cursor.is-yarn{background:var(--ink);width:74px;height:74px;margin:-37px 0 0 -37px}.spider-hero .cursor.is-yarn span{opacity:1}.spider-hero .cursor.is-link{background:color-mix(in srgb, var(--accent) 35%, transparent);border-color:#0000;width:56px;height:56px;margin:-28px 0 0 -28px}.spider-hero .cursor-dot{background:var(--ink);width:5px;height:5px;margin:-2.5px 0 0 -2.5px}@media (pointer:coarse){.spider-hero .cursor,.spider-hero .cursor-dot{display:none}}.spider-hero .reveal{opacity:0;animation:.9s cubic-bezier(.2,.8,.2,1) forwards hero-rise;animation-delay:var(--d,0s);transform:translateY(12px)}@keyframes hero-rise{to{opacity:1;transform:none}}.spider-hero.menu-open .hero-copy,.spider-hero.menu-open .threads,.spider-hero.menu-open .hint{opacity:0;pointer-events:none}@media (min-width:901px){body:has(.spider-hero:not(.menu-open)) [data-menu-button]{display:none}}@media (max-width:900px){.spider-hero .threads{display:none}}@media (max-width:640px){.spider-hero .hero-copy{padding:0 4px;top:50vh}.spider-hero .hero-copy h1{font-size:2.15rem}.spider-hero .lede{font-size:1rem}}:root[data-motion=paused] .spider-hero .reveal{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){:root:not([data-motion=on]) .spider-hero .reveal{opacity:1;animation:none;transform:none}}
