:root{--paper: #f1f0ec;--chip: #e2e1dc;--chip-hover: #d6d5cf;--ink: #141413;--ink-soft: rgba(20, 20, 19, .62);--rule: rgba(20, 20, 19, .14);--sans: "Inter Tight", "Helvetica Neue", Helvetica, Arial, sans-serif;--mono: "IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, monospace}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100%;overflow:hidden;background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;overscroll-behavior:none}.stage{position:fixed;inset:0;z-index:0;touch-action:none;cursor:grab}.stage:active{cursor:grabbing}.stage canvas{display:block}.chip{display:inline-flex;align-items:center;gap:8px;padding:6px 10px 7px;border:0;border-radius:2px;background:var(--chip);color:var(--ink);font:400 13px/1 var(--mono);letter-spacing:.01em;white-space:nowrap}.intro{position:fixed;z-index:3;top:clamp(14px,3vh,26px);left:clamp(14px,2vw,24px);max-width:min(440px,calc(100vw - 190px));padding:6px 8px;margin:-6px -8px;border-radius:2px;color:var(--ink);pointer-events:none;transition:background-color .4s ease}.intro .mark{margin:0 0 14px;font:700 30px/.9 var(--sans);letter-spacing:-.02em;text-transform:uppercase}.intro .line{margin:0;font:400 12px/1.55 var(--mono);color:var(--ink)}.intro .line span{color:var(--ink-soft)}.buy{position:fixed;z-index:3;top:clamp(14px,3vh,26px);right:clamp(14px,2vw,24px);display:flex;flex-direction:column;align-items:flex-end}.buy-btn{display:inline-flex;align-items:baseline;gap:.3em;padding:2px 8px 4px;margin:-2px -8px -4px;border:0;border-radius:2px;background:transparent;color:var(--ink);font:500 30px/1 var(--sans);letter-spacing:-.015em;text-decoration:none;cursor:pointer;transition:background-color .4s ease}.buy-btn .label{background:linear-gradient(currentColor,currentColor) 0 100% / 0 1.5px no-repeat;transition:background-size .25s ease}.buy-btn:hover .label,.buy-btn:focus-visible .label{background-size:100% 1.5px}.buy-btn .arrow{display:inline-block;transition:transform .2s ease}.buy-btn:hover .arrow{transform:translate(2px,-2px)}.buy-btn:focus-visible{outline:1px solid var(--ink);outline-offset:4px}.buy-note{margin:12px 0 0;opacity:0;transition:opacity .3s ease}.buy-note.on{opacity:1}body[data-act=room] .intro,body[data-act=rising] .intro,body[data-act=toMech] .intro,body[data-act=mech] .intro,body[data-act=fromMech] .intro,body[data-act=room] .buy-btn,body[data-act=rising] .buy-btn,body[data-act=toMech] .buy-btn,body[data-act=mech] .buy-btn,body[data-act=fromMech] .buy-btn{background-color:#f1f0ecfe}@media (max-width: 520px){.intro{max-width:calc(100vw - 150px)}.intro .mark{font-size:24px;margin-bottom:10px}.intro .line{font-size:11px}.buy-btn{font-size:22px}.buy-note{white-space:normal;max-width:120px;line-height:1.35;text-align:right}}.glow{position:fixed;z-index:1;width:34vmin;height:34vmin;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(closest-side,#fff6e842,#ffe8ca1f 34%,#ffd2aa12 60%,#ffc89600);pointer-events:none;mix-blend-mode:screen;transition:opacity .5s ease}.beacon{position:fixed;z-index:3;width:64px;height:64px;transform:translate(-50%,-50%);padding:0;border:0;border-radius:50%;background:none;cursor:pointer;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .4s ease}.beacon.on{opacity:1;visibility:visible;pointer-events:auto}.beacon .core{position:absolute;left:50%;top:50%;width:10px;height:10px;margin:-5px 0 0 -5px;border-radius:50%;background:#fff;animation:beacon 2.2s ease-in-out infinite}.beacon .ring{position:absolute;left:50%;top:50%;width:30px;height:30px;margin:-15px 0 0 -15px;border:1px solid rgba(255,255,255,.9);border-radius:50%;animation:ping 2.2s cubic-bezier(.2,.6,.3,1) infinite}.beacon .ring.late{animation-delay:1.1s}.beacon:hover .core{animation-duration:1.1s}@keyframes beacon{0%,to{transform:scale(.85);opacity:.8}50%{transform:scale(1.1);opacity:1}}@keyframes ping{0%{transform:scale(.6);opacity:.9}75%{transform:scale(2.2);opacity:0}to{transform:scale(2.2);opacity:0}}.nav{position:fixed;z-index:3;bottom:clamp(14px,3vh,26px);cursor:pointer;opacity:0;pointer-events:none;transition:opacity .5s ease,background-color .15s ease}.nav.left{left:clamp(14px,2vw,24px)}.nav.right{right:clamp(14px,2vw,24px)}.nav.on{opacity:1;pointer-events:auto}.nav:hover{background:var(--chip-hover)}.nav.primary{background:var(--ink);color:var(--paper)}@media (hover: hover){.nav.primary:hover{background:#3a3a38}}.nav.big{left:50%;right:auto;bottom:clamp(22px,4.5vh,40px);transform:translate(-50%);gap:14px;padding:18px 34px 19px;font:500 clamp(17px,1.6vw,22px)/1 var(--sans);letter-spacing:-.005em}body[data-act=product] .bendy{bottom:clamp(104px,17vh,150px)}.nav:focus-visible{outline:1px solid var(--ink);outline-offset:2px}.nav .arrow{transition:transform .2s ease}.nav:hover .arrow.back{transform:translate(-2px)}.nav:hover .arrow.forward{transform:translate(2px)}.legal{position:fixed;z-index:5;right:0;bottom:0;left:0;padding:0 clamp(14px,2vw,24px);color:var(--ink-soft);font:400 11px/1.6 var(--mono)}.legal>summary{list-style:none;display:block;height:14px;cursor:pointer;position:relative}.legal>summary::-webkit-details-marker{display:none}.legal>summary:after{content:"";position:absolute;right:0;bottom:6px;width:22px;height:1px;background:var(--rule);transition:width .3s ease,background .3s ease}.legal>summary:hover:after{width:40px;background:var(--ink-soft)}.legal[open]{padding-bottom:18px;background:var(--paper);border-top:1px solid var(--rule)}.legal[open]>summary:after{width:40px}.legal p{margin:0 0 8px;max-width:86ch}.legal a{color:var(--ink)}@media (max-height: 620px){.legal{font-size:10px}}@media (prefers-reduced-motion: reduce){.beacon .core,.beacon .ring{animation:none}}.cue,.bendy{position:fixed;z-index:3;left:50%;bottom:clamp(56px,10vh,80px);margin:0;transform:translate(-50%);text-align:center;opacity:0;pointer-events:none;transition:opacity .5s ease,background-color .3s ease,color .3s ease}.cue.on{opacity:1}.cue.empty{opacity:0}.cue.ask{background:var(--ink);color:var(--paper)}.cue span{display:inline-block;animation:cuein .45s ease both;transition:opacity .3s ease}.cue span.quiet{opacity:.35}@keyframes cuein{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}.bendy.on{opacity:1;transition-delay:.3s}.orb-prompt{position:fixed;z-index:3;display:flex;align-items:center;padding:0 0 0 30px;border:0;background:none;cursor:pointer;transform:translateY(-50%);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .5s ease,visibility 0s linear .5s}.orb-prompt:before{content:"";width:22px;height:1px;background:#ffffffd9;transform-origin:left center;transform:scaleX(0);transition:transform .45s ease .1s}.orb-prompt .chip{transform:translate(-6px);transition:transform .45s ease .15s,background-color .15s ease}.orb-prompt.on{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .5s ease}.orb-prompt.on:before{transform:scaleX(1)}.orb-prompt.on .chip{transform:none}.orb-prompt:hover .chip{background:var(--chip-hover)}.orb-prompt:focus-visible{outline:none}.orb-prompt:focus-visible .chip{outline:1px solid var(--paper);outline-offset:2px}.orb-prompt.flip{flex-direction:row-reverse;padding:0 30px 0 0;transform:translate(-100%,-50%)}.orb-prompt.flip:before{transform-origin:right center}.orb-prompt.flip .chip{transform:translate(6px)}.orb-prompt.flip.on .chip{transform:none}.steps{position:fixed;z-index:2;top:0;bottom:0;left:0;width:42vw;display:flex;flex-direction:column;justify-content:center;padding:140px clamp(14px,2vw,24px) 80px;background:var(--paper);border-right:1px solid var(--rule);opacity:0;transform:translate(-24px);pointer-events:none;transition:opacity .6s ease,transform .6s ease}.steps.on{opacity:1;transform:none;pointer-events:auto}.steps-label{margin:0 0 26px;font:400 12px/1 var(--mono);color:var(--ink-soft)}.steps ol{list-style:none;margin:0;padding:0;border-top:1px solid var(--rule)}.steps li{border-bottom:1px solid var(--rule);color:var(--ink);opacity:.28;transition:opacity .4s ease}.steps .step{display:flex;gap:18px;width:100%;padding:16px 0 17px;margin:0;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent}.steps .step:disabled{cursor:default}.steps li:hover{opacity:.7}.steps li.now,.steps li.now:hover{opacity:1}.steps .step:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.steps li.done{opacity:.5}.steps li.now{opacity:1}.steps .num{flex:none;width:1.2em;padding-top:.55em;font:400 12px/1 var(--mono)}.steps .text{font:500 clamp(22px,2.4vw,38px)/1.08 var(--sans);letter-spacing:-.015em}.steps .note{display:block;margin-top:10px;font:400 12px/1.5 var(--mono);letter-spacing:0;color:var(--ink-soft)}body[data-act=mech] .cue{left:71vw}@media (max-aspect-ratio: 105/100){.steps{top:auto;right:0;width:auto;height:38vh;justify-content:flex-start;padding:18px 14px 64px;border-right:0;border-top:1px solid var(--rule);transform:none;background:#f1f0ecfe}.steps-label{margin-bottom:10px}.steps .step{gap:12px;padding:7px 0 8px}.steps .num{padding-top:.35em;font-size:11px}.steps .text{font-size:17px}.steps .note{margin-top:4px;font-size:10.5px}body[data-act=mech] .cue{left:50vw;bottom:calc(38vh + 12px)}}.hint{position:fixed;z-index:3;left:50%;bottom:clamp(14px,3vh,26px);margin:0;transform:translate(-50%,4px);opacity:0;pointer-events:none;transition:opacity .6s ease,transform .6s ease}.hint.on{opacity:1;transform:translate(-50%)}.hint-icon{width:22px;height:10px;overflow:visible}.hint-icon path{fill:none;stroke:currentColor;stroke-width:1.1;stroke-linecap:round;stroke-linejoin:round}.hint-icon circle{fill:currentColor;animation:hint-slide 2.4s ease-in-out infinite}@keyframes hint-slide{0%,to{transform:translate(-5px)}50%{transform:translate(5px)}}@media (prefers-reduced-motion: reduce){.hint-icon circle{animation:none}}.glow.mark{width:11vmin;height:11vmin}.beacon.passive{pointer-events:none;cursor:default}.pop{position:fixed;z-index:2;inset:0;pointer-events:none;mix-blend-mode:screen;background:radial-gradient(60vmax 60vmax at 50% 55%,#3ea8544d,#3ea85400 70%),radial-gradient(90vmax 90vmax at 50% 50%,#da452657,#da452600 72%);animation:pop .95s ease-out both}@keyframes pop{0%{opacity:0;visibility:visible}12%{opacity:1;visibility:visible}99%{opacity:0;visibility:visible}to{opacity:0;visibility:hidden}}@media (prefers-reduced-motion: reduce){.pop{animation:none}.pop{opacity:0}}.closer{position:fixed;z-index:3;left:50%;bottom:clamp(18px,5vh,44px);width:min(520px,calc(100vw - 28px));padding:20px 22px 18px;background:#f1f0ecfe;border:1px solid var(--rule);transform:translate(-50%,10px);opacity:0;pointer-events:none;transition:opacity .6s ease .4s,transform .6s ease .4s}.closer.on{opacity:1;transform:translate(-50%);pointer-events:auto}.closer h2{margin:0 0 8px;font:500 clamp(22px,2.6vw,30px)/1.1 var(--sans);letter-spacing:-.015em}.closer p{margin:0 0 14px;font:400 12px/1.6 var(--mono);color:var(--ink-soft)}.closer-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.closer .buy.inline{position:static}.closer-link{padding:0;border:0;background:none;font:400 12px/1 var(--mono);color:var(--ink);text-decoration:underline;text-underline-offset:3px;cursor:pointer}body[data-act=room][data-end="1"] .buy:not(.inline){opacity:0;pointer-events:none}.closer p.fit{margin:-6px 0 14px;color:var(--ink);font-weight:500}.closer .buy-note:not(.on){display:none}.closer .cta{display:inline-flex;align-items:center;gap:12px;padding:16px 28px 17px;border:0;border-radius:2px;background:var(--ink);color:var(--paper);font:500 clamp(17px,1.5vw,20px)/1 var(--sans);letter-spacing:-.005em;cursor:pointer}@media (hover: hover){.closer .cta:hover{background:#3a3a38}}.closer.before p,.closer.after p{margin-bottom:16px}
