:root{color-scheme:light;font-synthesis:none;background:#fff;font-family:Arial,Helvetica,sans-serif}*,:before,:after{box-sizing:border-box}html,body{background:#fff;width:100%;min-width:320px;min-height:100%;margin:0;overflow:hidden}body{color:#343a41;min-height:100svh}button{font:inherit}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.title-screen,.title-screen__surface{width:100%;min-height:100svh;display:block}.title-screen__surface{isolation:isolate;background:#fff;position:relative;overflow:hidden}.title-stage{opacity:1;pointer-events:none;position:absolute;inset:0}.title-composition{width:min(87vw,94rem);height:min(72vh,49rem);position:absolute;top:clamp(7rem,14vh,10rem);left:50%;transform:translate(-50%)}.title-composition__logo{z-index:2;width:clamp(31rem,43vw,47rem);position:absolute;top:clamp(11rem,27vh,16rem);left:clamp(0rem,3vw,4rem)}.title-composition__artwork{z-index:1;width:min(58vw,56rem);position:absolute;top:-12%;right:-1.5%}.finite-forever-logo,.finite-forever-logo__svg,.title-artwork,.title-artwork__svg{width:100%;display:block}.finite-forever-logo__svg{overflow:visible}.logo__word{text-rendering:geometricprecision;font-family:Didot,Bodoni MT,Baskerville Display PT,Baskerville,Times New Roman,serif;font-weight:400}.logo__word--finite{font-size:92px}.logo__word--forever{font-size:98px}.logo__signal{fill:none;stroke:#9eb4c1;stroke-width:.72px;stroke-linecap:round;vector-effect:non-scaling-stroke;opacity:.18}.logo__trace{fill:#0000;stroke:#6e7c85;stroke-width:.62px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:11 7;stroke-dashoffset:0;vector-effect:non-scaling-stroke;opacity:.09}.logo__clip{transform-box:fill-box;transform-origin:0;transform:scaleX(1)}.logo__mist{fill:#9fb6c4;opacity:0}.logo__fill{fill:#343a41;opacity:.94}.title-artwork{opacity:.74}.artwork__line{stroke-width:.82px;stroke-linecap:round;vector-effect:non-scaling-stroke;opacity:.2}.artwork__line--secondary{stroke-width:.54px;opacity:.14}.artwork__shard{stroke:#adc3d0;stroke-width:.48px;vector-effect:non-scaling-stroke;opacity:.16}.artwork__points{opacity:.18}.enter-prompt,.continue-prompt,.sound-controls{display:none}.title-credit{right:max(2rem, calc(env(safe-area-inset-right) + 1.1rem));bottom:max(1.7rem, calc(env(safe-area-inset-bottom) + 1.1rem));z-index:4;color:#6c7479;letter-spacing:.28em;opacity:.58;margin:0;font-size:.57rem;font-weight:400;position:absolute}html.js .title-stage,html.js .logo__signal,html.js .logo__trace,html.js .logo__mist,html.js .logo__fill,html.js .title-artwork,html.js .artwork__line,html.js .artwork__shard,html.js .artwork__points,html.js .title-credit{opacity:0}html.js .logo__clip{transform:scaleX(0)}html.js .enter-prompt{z-index:6;visibility:hidden;opacity:0;flex-direction:column;align-items:center;width:min(22rem,90vw);display:flex;position:absolute;top:64%;left:50%;transform:translate(-50%,-50%)}html.js .title-screen[data-state=idle] .enter-prompt{animation:prompt-arrival .9s cubic-bezier(.22, .72, .28, 1) var(--delay-prompt-reveal) both}.enter-prompt__choice{color:#4d565d;letter-spacing:.48em;cursor:pointer;opacity:.7;background:0 0;border:0;outline:0;min-width:16rem;min-height:2.75rem;padding:.75rem 1.25rem;font-size:.63rem;font-weight:400;line-height:1;transition:color .32s,opacity .32s,letter-spacing .42s;position:relative}.enter-prompt__choice:after{content:"";background:#aebec7;width:0;height:1px;transition:width .42s cubic-bezier(.22,.72,.28,1);position:absolute;bottom:.42rem;left:50%;transform:translate(-50%)}.enter-prompt__choice--silent{color:#889197;letter-spacing:.34em;opacity:.58;margin-top:.15rem;font-size:.48rem}.enter-prompt__choice:hover,.enter-prompt__choice:focus-visible{color:#2f363b;letter-spacing:.54em;opacity:1}.enter-prompt__choice--silent:hover,.enter-prompt__choice--silent:focus-visible{letter-spacing:.38em}.enter-prompt__choice:hover:after,.enter-prompt__choice:focus-visible:after{width:2.7rem}.enter-prompt__choice--silent:hover:after,.enter-prompt__choice--silent:focus-visible:after{width:1.8rem}.enter-prompt__choice:focus-visible{outline:1px solid #0000}html.js .title-screen[data-state=started] .enter-prompt{animation:prompt-depart var(--duration-entry-exit) cubic-bezier(.4, 0, .2, 1) both}html.js .title-screen[data-state=started] .title-stage{opacity:1}html.js .title-screen[data-state=started] .logo__signal{stroke-dasharray:1;stroke-dashoffset:1px;animation:signal-draw 1.45s cubic-bezier(.16, .74, .28, 1) var(--delay-trace-start) both}html.js .title-screen[data-state=started] .logo__signal--two{animation-delay:calc(var(--delay-trace-start) + .22s)}html.js .title-screen[data-state=started] .logo__signal--three{animation-delay:calc(var(--delay-trace-start) + .48s)}html.js .title-screen[data-state=started] .logo__trace--finite{stroke-dashoffset:720px;animation:word-trace var(--duration-finite-trace) cubic-bezier(.18, .74, .3, 1) var(--delay-finite-start) both, trace-resolve var(--duration-title-fill) ease-out var(--delay-fill-start) forwards}html.js .title-screen[data-state=started] .logo__trace--forever{stroke-dashoffset:840px;animation:word-trace var(--duration-forever-trace) cubic-bezier(.18, .74, .3, 1) var(--delay-forever-start) both, trace-resolve var(--duration-title-fill) ease-out var(--delay-fill-start) forwards}html.js .title-screen[data-state=started] .logo__clip--finite{animation:word-clip var(--duration-finite-trace) cubic-bezier(.22, .68, .3, 1) var(--delay-finite-start) both}html.js .title-screen[data-state=started] .logo__clip--forever{animation:word-clip var(--duration-forever-trace) cubic-bezier(.22, .68, .3, 1) var(--delay-forever-start) both}html.js .title-screen[data-state=started] .logo__mist{animation:title-mist var(--duration-title-mist) cubic-bezier(.22, .66, .34, 1) var(--delay-title-half) both}html.js .title-screen[data-state=started] .logo__fill{animation:title-fill var(--duration-title-fill) cubic-bezier(.2, .76, .3, 1) var(--delay-fill-start) both}html.js .title-screen[data-state=started] .title-artwork{animation:artwork-presence var(--duration-artwork) ease-out var(--delay-artwork-start) both}html.js .title-screen[data-state=started] .artwork__line--primary{stroke-dasharray:1;stroke-dashoffset:1px;animation:artwork-line-draw var(--duration-artwork) cubic-bezier(.16, .72, .28, 1) var(--delay-artwork-start) both}html.js .title-screen[data-state=started] .artwork__line--secondary{stroke-dasharray:1;stroke-dashoffset:1px;animation:artwork-line-draw-secondary var(--duration-artwork-secondary) ease-out var(--delay-artwork-secondary) both}html.js .title-screen[data-state=started] .artwork__line--offset-one{animation-delay:calc(var(--delay-artwork-start) + .36s)}html.js .title-screen[data-state=started] .artwork__line--secondary.artwork__line--offset-one{animation-delay:calc(var(--delay-artwork-secondary) + .28s)}html.js .title-screen[data-state=started] .artwork__line--offset-two{animation-delay:calc(var(--delay-artwork-start) + .72s)}html.js .title-screen[data-state=started] .artwork__line--secondary.artwork__line--offset-two{animation-delay:calc(var(--delay-artwork-secondary) + .52s)}html.js .title-screen[data-state=started] .artwork__shard{transform-box:fill-box;transform-origin:50%;animation:shard-condense var(--duration-artwork-secondary) ease-out var(--delay-artwork-secondary) both}html.js .title-screen[data-state=started] .artwork__shard--two{animation-delay:calc(var(--delay-artwork-secondary) + .22s)}html.js .title-screen[data-state=started] .artwork__shard--three{animation-delay:calc(var(--delay-artwork-secondary) + .42s)}html.js .title-screen[data-state=started] .artwork__shard--four{animation-delay:calc(var(--delay-artwork-secondary) + .58s)}html.js .title-screen[data-state=started] .artwork__shard--five{animation-delay:calc(var(--delay-artwork-secondary) + .76s)}html.js .title-screen[data-state=started] .artwork__points{animation:points-arrive 1.8s ease-out var(--delay-artwork-secondary) both}html.js .continue-prompt{z-index:4;bottom:max(12vh, calc(env(safe-area-inset-bottom) + 5.6rem));color:#727b81;letter-spacing:.46em;white-space:nowrap;opacity:0;margin:0;font-size:.5rem;font-weight:400;display:block;position:absolute;left:50%;transform:translate(-50%)}html.js .title-screen[data-state=started] .continue-prompt{animation:secondary-reveal .9s ease-out var(--delay-screen-complete) both, quiet-pulse 3.8s ease-in-out calc(var(--delay-screen-complete) + 1.2s) infinite}html.js .sound-controls{z-index:7;bottom:max(1.05rem, calc(env(safe-area-inset-bottom) + .65rem));left:max(1.45rem, calc(env(safe-area-inset-left) + .8rem));opacity:0;align-items:center;min-height:2.75rem;display:flex;position:absolute}html.js .title-screen[data-state=started] .sound-controls{animation:secondary-reveal .8s ease-out var(--delay-screen-complete) both}.sound-control{color:#6f7a80;cursor:pointer;opacity:.62;background:0 0;border:0;place-items:center;width:2rem;height:2.75rem;padding:0;transition:opacity .24s,color .24s;display:grid;position:relative}.sound-control:hover,.sound-control:focus-visible{color:#384148;opacity:1}.sound-control:focus-visible{outline-offset:-.3rem;outline:1px solid #c6d2d8}.sound-control:disabled{cursor:default;opacity:.18}.sound-controls[data-available=false]{visibility:hidden}.sound-control__note{font-family:Georgia,serif;font-size:.78rem;position:relative}.sound-control--mute:after{content:"";transform-origin:50%;background:currentColor;width:.85rem;height:1px;transition:transform .24s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-48deg)scaleX(0)}.sound-controls[data-muted=true] .sound-control--mute:after{transform:translate(-50%,-50%)rotate(-48deg)scaleX(1)}.sound-control__playback-icon,.sound-control__playback-icon:before,.sound-control__playback-icon:after{display:block}.sound-control__playback-icon{width:.48rem;height:.54rem;position:relative}.sound-control__playback-icon:before,.sound-control__playback-icon:after{content:"";background:currentColor;width:1px;height:100%;transition:transform .24s;position:absolute;top:0}.sound-control__playback-icon:before{left:.08rem}.sound-control__playback-icon:after{right:.08rem}.sound-controls[data-playback=paused] .sound-control__playback-icon:before{background:0 0;border-top:.29rem solid #0000;border-bottom:.29rem solid #0000;border-left:.45rem solid;height:0;left:.1rem}.sound-controls[data-playback=paused] .sound-control__playback-icon:after{display:none}html.js .title-credit{opacity:0}html.js .title-screen[data-state=started] .title-credit{animation:credit-arrival 1.1s ease-out var(--delay-credit-reveal) both}@keyframes prompt-arrival{0%{visibility:visible;pointer-events:none;opacity:0;filter:blur(2px);transform:translate(-50%,calc(4px - 50%))}to{visibility:visible;pointer-events:auto;opacity:1;filter:blur();transform:translate(-50%,-50%)}}@keyframes prompt-depart{0%{visibility:visible;opacity:1;filter:blur();transform:translate(-50%,-50%)}to{visibility:hidden;opacity:0;filter:blur(2px);transform:translate(-50%,calc(-50% - 3px))}}@keyframes signal-draw{0%{stroke-dashoffset:1px;opacity:0}18%{opacity:.12}72%{opacity:.28}to{stroke-dashoffset:0;opacity:.13}}@keyframes word-trace{0%{opacity:0;filter:blur(1px)}12%{opacity:.13}58%{opacity:.46}to{stroke-dashoffset:0;opacity:.24;filter:blur()}}@keyframes word-clip{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes trace-resolve{0%{opacity:.24}to{opacity:.055}}@keyframes title-mist{0%{opacity:0;filter:blur(8px);transform:translateY(2px)}44%{opacity:.065}78%{opacity:.04;filter:blur(3px)}to{opacity:0;filter:blur();transform:translateY(0)}}@keyframes title-fill{0%{opacity:0;filter:blur(4px);transform:translateY(1.5px)scale(1.007)}68%{opacity:.72}to{opacity:.94;filter:blur();transform:translateY(0)scale(1)}}@keyframes artwork-presence{0%{opacity:0;filter:blur(2px);transform:translate(5px,3px)}to{opacity:.74;filter:blur();transform:translate(0,0)}}@keyframes artwork-line-draw{0%{stroke-dashoffset:1px;opacity:0}30%{opacity:.13}to{stroke-dashoffset:0;opacity:.2}}@keyframes artwork-line-draw-secondary{0%{stroke-dashoffset:1px;opacity:0}to{stroke-dashoffset:0;opacity:.14}}@keyframes shard-condense{0%{opacity:0;transform:translateY(5px)scale(1.025)}to{opacity:.16;transform:translateY(0)scale(1)}}@keyframes points-arrive{0%{opacity:0}to{opacity:.18}}@keyframes secondary-reveal{0%{visibility:visible;opacity:0;filter:blur(1.5px)}to{visibility:visible;opacity:.56;filter:blur()}}@keyframes quiet-pulse{0%,to{opacity:.42}50%{opacity:.7}}@keyframes credit-arrival{0%{opacity:0;letter-spacing:.38em;transform:translate(5px)}to{opacity:.58;letter-spacing:.28em;transform:translate(0)}}@media (width<=900px){.title-composition{width:100%;height:76svh;top:5svh}.title-composition__artwork{width:min(105vw,36rem);top:-1rem;left:50%;right:auto;transform:translate(-46%)}.title-composition__logo{width:min(88vw,32rem);top:clamp(15rem,42svh,23rem);left:6vw}html.js .enter-prompt{top:67%}html.js .continue-prompt{bottom:max(11svh, calc(env(safe-area-inset-bottom) + 5.2rem))}.title-credit{right:max(1.1rem, calc(env(safe-area-inset-right) + .75rem));bottom:max(1.25rem, calc(env(safe-area-inset-bottom) + .75rem));letter-spacing:.24em;font-size:.51rem}}@media (width<=430px){.title-composition{top:4svh}.title-composition__artwork{width:108vw}.title-composition__logo{width:90vw;top:clamp(13.5rem,39svh,20.5rem);left:5vw}.enter-prompt__choice{min-width:14rem}html.js .sound-controls{left:max(.75rem, calc(env(safe-area-inset-left) + .35rem))}}@media (height<=620px) and (width>=650px){.title-composition{height:92svh;top:0}.title-composition__logo{width:min(46vw,37rem);top:29svh;left:4vw}.title-composition__artwork{width:min(53vw,36rem);top:-20%;left:auto;right:1vw;transform:none}html.js .enter-prompt{top:66%}html.js .continue-prompt{bottom:12svh}}@media (prefers-reduced-motion:reduce){html.js .title-screen[data-state=idle] .enter-prompt{animation-duration:.25s;animation-delay:.1s}html.js .title-screen[data-state=started] .enter-prompt{animation-duration:.18s}html.js .title-screen[data-state=started] .title-stage{opacity:1;transition:opacity var(--duration-reduced-reveal) ease-out .12s}html.js .title-screen[data-state=started] .logo__signal,html.js .title-screen[data-state=started] .logo__mist{animation:none;display:none}html.js .title-screen[data-state=started] .logo__trace{stroke-dashoffset:0;opacity:.055;animation:none}html.js .title-screen[data-state=started] .logo__clip{animation:none;transform:scaleX(1)}html.js .title-screen[data-state=started] .logo__fill{opacity:.94;animation:none}html.js .title-screen[data-state=started] .title-artwork{opacity:.74;animation:none}html.js .title-screen[data-state=started] .artwork__line{stroke-dashoffset:0;opacity:.2;animation:none}html.js .title-screen[data-state=started] .artwork__line--secondary{opacity:.14}html.js .title-screen[data-state=started] .artwork__shard{opacity:.16;animation:none}html.js .title-screen[data-state=started] .artwork__points{opacity:.18;animation:none}html.js .title-screen[data-state=started] .continue-prompt,html.js .title-screen[data-state=started] .sound-controls,html.js .title-screen[data-state=started] .title-credit{animation:secondary-reveal .3s ease-out var(--duration-reduced-reveal) both}html.js .title-screen[data-state=started] .title-credit{animation-name:credit-arrival}}
