.cv2-horizon-backdrop{pointer-events:none;--cv2-hb-fade:opacity var(--app-dur-dissolve,var(--journey-dissolve,.285s)) var(--app-ease) var(--journey-back-delay,.16s);position:absolute;inset:0;overflow:hidden}.cv2-horizon-backdrop[data-away]{--cv2-hb-fade:opacity var(--app-dur-dissolve,var(--journey-dissolve,.285s)) var(--app-ease) var(--journey-crossfade,.12s)}.cv2-horizon-backdrop[data-still]{--cv2-hb-fade:opacity var(--journey-crossfade,.12s) linear}.cv2-horizon-backdrop-field{opacity:.72;transition:var(--cv2-hb-fade);position:absolute;inset:0}.cv2-horizon-backdrop-field>canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.cv2-horizon-backdrop-line{background:var(--app-line-strong);height:1px;transition:var(--cv2-hb-fade);position:absolute;bottom:0;left:0;right:0}.cv2-horizon-backdrop-under{background:radial-gradient(closest-side, var(--app-bg) 0%, var(--app-bg) 64%, transparent 100%);transition:var(--cv2-hb-fade);position:absolute}.cv2-horizon-backdrop-under[data-phone]{background:color-mix(in oklch, var(--app-bg) 50%, transparent);filter:blur(10px);border-radius:24px}.cv2-horizon-backdrop[data-away] .cv2-horizon-backdrop-field,.cv2-horizon-backdrop[data-away] .cv2-horizon-backdrop-line,.cv2-horizon-backdrop[data-away] .cv2-horizon-backdrop-under{opacity:0}
@keyframes cv2-q-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes cv2-q-out{0%{opacity:1;filter:blur();transform:none}to{opacity:0;filter:blur(4px);transform:translateY(-4px)}}@keyframes cv2-q-word{0%{opacity:0;filter:blur(6px);transform:translateY(4px)}to{opacity:1;filter:blur();transform:none}}@keyframes cv2-q-part{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes cv2-q-fade{0%{opacity:0}to{opacity:1}}.cv2-step-card{--cv2-q-words:var(--journey-word-lead,60ms);animation:cv2-q-in var(--app-dur-glide) var(--app-ease-out) both}.cv2-step-card[data-play=arrive],.cv2-step-card[data-play=arrive] [data-w],.cv2-step-card[data-play=arrive] [data-part]{animation:none}.cv2-step-card[data-play=back]{--cv2-q-words:var(--journey-back-words,.22s);animation-delay:var(--journey-back-delay,.16s)}.cv2-step-card [data-w]{animation:cv2-q-word var(--journey-word-quick,.3s) cubic-bezier(.22, .8, .24, 1) both;animation-delay:calc(var(--cv2-q-words) + var(--i,0) * var(--app-stagger));display:inline-block}.cv2-step-card [data-part]{animation:cv2-q-part var(--app-dur) var(--app-ease-out) both;animation-delay:calc(var(--cv2-q-words) + var(--words,0) * var(--app-stagger) + var(--journey-part-gap,.14s) + var(--p,0) * var(--app-stagger))}.cv2-step-card h1:focus{outline:none}.cv2-step-card[data-leave]{animation:cv2-q-out var(--app-dur-exit-slow) var(--app-ease-in) forwards}@media (prefers-reduced-motion:reduce){.cv2-step-card{animation:cv2-q-fade var(--journey-crossfade,.12s) linear both}.cv2-step-card [data-w]{animation:none}.cv2-step-card [data-part]{animation:cv2-q-fade var(--journey-crossfade,.12s) linear both;animation-delay:calc(var(--journey-crossfade,.12s) + var(--p,0) * var(--app-stagger))}.cv2-step-card[data-play=back]{animation-delay:var(--journey-back-delay,.16s)}.cv2-step-card[data-play=back] [data-part]{animation-delay:calc(var(--journey-back-parts,.28s) + var(--p,0) * var(--app-stagger))}.cv2-step-card[data-leave]{animation:cv2-q-fade var(--journey-crossfade,.12s) linear reverse forwards}.cv2-step-card *{transition:none!important}}
