.guest-welcome-overlay{z-index:100;color:var(--brand-navy);background:var(--brand-ice);place-items:center;padding:4rem 1.5rem;display:grid;position:fixed;inset:0;overflow:hidden}.guest-welcome-halo{aspect-ratio:1;background:radial-gradient(circle, white 15%, var(--brand-light) 55%, transparent 70%);opacity:.6;border-radius:50%;width:min(120vw,65rem);animation:1.6s ease-out both welcome-halo,7s ease-in-out 1.6s infinite alternate welcome-breathe;position:absolute}.guest-welcome-sky{pointer-events:none;position:absolute;inset:0}.guest-welcome-sparkle{background:var(--brand-primary);clip-path:polygon(50% 0,60% 40%,100% 50%,60% 60%,50% 100%,40% 60%,0 50%,40% 40%);opacity:0;width:10px;height:10px;animation:3s ease-in-out infinite welcome-twinkle;position:absolute}.guest-welcome-orbit{width:var(--w);height:var(--h);margin:calc(var(--h) / -2) 0 0 calc(var(--w) / -2);transform:rotate(var(--tilt));animation:1.2s cubic-bezier(.2,.8,.2,1) both welcome-orbit-in;position:absolute;top:50%;left:50%}.guest-welcome-ring{border:1px solid #0078d438;border-radius:50%;position:absolute;inset:0}.guest-welcome-planetX{animation:welcome-x var(--d) cubic-bezier(.37, 0, .63, 1) var(--delay) infinite alternate;position:absolute;top:50%;left:50%}.guest-welcome-planet{width:var(--s);height:var(--s);margin:calc(var(--s) / -2);background:var(--c);animation:welcome-y var(--d) cubic-bezier(.37, 0, .63, 1) calc(var(--delay) - var(--d) / 2) infinite alternate;border-radius:50%;display:block;box-shadow:0 0 0 4px #ffffff8c}.guest-welcome-planet--ring{box-shadow:0 0 0 4px #ffffff8c,0 0 0 7px #0078d440}.guest-welcome-message{z-index:1;text-align:center;width:min(100%,38rem);position:relative}.guest-welcome-greeting{letter-spacing:-.04em;margin-bottom:1rem;font-size:clamp(1.4rem,5vw,2.25rem);font-weight:800;line-height:1.15;animation:.75s ease-out .2s both welcome-reveal;display:block}.guest-welcome-logo{width:clamp(14rem,62vw,26rem);margin:0 auto 1.5rem;animation:.85s cubic-bezier(.2,.8,.2,1) .5s both welcome-reveal;display:block}.guest-welcome-subtitle{color:var(--info);letter-spacing:-.01em;font-size:clamp(1.05rem,3.8vw,1.35rem);font-weight:700;animation:.7s ease-out .85s both welcome-reveal}.guest-welcome-tagline{color:var(--text-secondary);margin-top:1.25rem;font-size:clamp(.9rem,3vw,1.1rem);line-height:1.8;animation:.75s ease-out 1.1s both welcome-reveal}.guest-welcome-start{background:var(--brand-primary);color:#fff;cursor:pointer;border-radius:999px;align-items:center;gap:.6rem;min-height:52px;margin-top:3.25rem;padding:.85rem 2.25rem;font-size:1.05rem;font-weight:800;transition:background-color .15s,transform .15s;animation:.7s ease-out 1.4s both welcome-reveal;display:inline-flex;box-shadow:0 10px 24px #0078d447}.guest-welcome-start:hover{background:var(--brand-hover);transform:translateY(-1px)}.guest-welcome-start:focus-visible{outline:3px solid var(--brand-navy);outline-offset:4px}@keyframes welcome-halo{0%{opacity:.3;transform:scale(.75)}to{opacity:.6;transform:scale(1)}}@keyframes welcome-breathe{to{transform:scale(1.08)}}@keyframes welcome-twinkle{0%,to{opacity:0;transform:scale(.4)}50%{opacity:.55;transform:scale(1)}}@keyframes welcome-orbit-in{0%{opacity:0;transform:rotate(var(--tilt)) scale(.6)}to{opacity:1;transform:rotate(var(--tilt)) scale(1)}}@keyframes welcome-x{0%{transform:translateX(calc(var(--w) / -2))}to{transform:translateX(calc(var(--w) / 2))}}@keyframes welcome-y{0%{transform:translateY(calc(var(--h) / -2)) scale(.65);opacity:.55}to{transform:translateY(calc(var(--h) / 2)) scale(1.15);opacity:1}}@keyframes welcome-reveal{0%{opacity:0;filter:blur(5px);transform:translateY(18px)}to{opacity:1;filter:blur();transform:translateY(0)}}@media (max-height:540px) and (orientation:landscape){.guest-welcome-overlay{padding-block:1rem}.guest-welcome-greeting{margin-bottom:.4rem;font-size:1.3rem}.guest-welcome-logo{width:12rem;margin-bottom:.5rem}.guest-welcome-subtitle{margin-bottom:0}.guest-welcome-tagline{margin-top:.5rem}.guest-welcome-start{margin-top:1.25rem}}@media (prefers-reduced-motion:reduce){.guest-welcome-overlay *,.guest-welcome-overlay :before{transition:none!important;animation:none!important}.guest-welcome-sparkle{opacity:.4}.guest-welcome-planetX{transform:translate(calc(var(--w) / 2 * var(--px)), calc(var(--h) / 2 * var(--py)))}}
