.hero-grid .hero-grid__gate{position:absolute;inset:0}.hero-grid .hero-grid__pass{color:var(--muted);opacity:0;background:linear-gradient(to top,var(--signal)2px,transparent 2px)no-repeat 0 0/100% 0%;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000,#000 97%,#000);mask-image:linear-gradient(#0000,#000 97%,#000);-webkit-mask-position:0 -42.86%;mask-position:0 -42.86%;-webkit-mask-size:100% 30%;mask-size:100% 30%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.hero-shell[data-entrance=play] .hero-grid__pass{animation:entrance-front var(--entrance-ms,1.5s)linear both}@keyframes entrance-front{0%{opacity:0;background-size:100% 0%;-webkit-mask-position:0 -42.86%;mask-position:0 -42.86%}5%,86%{opacity:1}to{opacity:0;background-size:100% 104%;-webkit-mask-position:0 105.71%;mask-position:0 105.71%}}.hero h1 .decode.is-decoding+.hero__period{animation:.36s step-end infinite entrance-cursor}.hero h1 .decode.is-landed+.hero__period{animation:entrance-rest .7s var(--ease-out)}@keyframes entrance-cursor{50%{opacity:.12}}@keyframes entrance-rest{0%{color:var(--ink);text-shadow:0 0 .2em var(--signal),0 0 .5em var(--signal)}}.hero-shell[data-stage=wait] .identity[data-engine=canvas] pre{visibility:visible}.hero-shell[data-stage=wait] .identity__canvas{opacity:0}.hero-shell[data-stage=open] .identity[data-engine=canvas] pre{animation:entrance-hold var(--stage-ms,.64s)linear}.hero-shell[data-stage=open] .identity__canvas{background:linear-gradient(to top,var(--signal)2px,transparent 2px)no-repeat 0 0/100% 0%;background-color:inherit;animation:entrance-develop var(--stage-ms,.64s)linear}@keyframes entrance-hold{0%,to{visibility:visible}}@keyframes entrance-develop{0%{clip-path:inset(0 0 100%);background-size:100% 0%}to{clip-path:inset(0);background-size:100% 100%}}
