/* Close entrance portrait, with the actual facade filling the entire viewport. */
.immersive-arrival{isolation:isolate;display:block;height:100svh;height:100dvh;max-height:none;min-height:440px;padding:0;background:#293b4b;color:#f4ecd9;overflow:hidden}
.immersive-arrival .architecture{position:absolute;inset:0;width:100%;height:100%;display:block;transform:none;overflow:hidden}
.architecture-stage{position:absolute;inset:0;width:100%;height:100%;transform-origin:49.3% 77%;will-change:transform}
.is-at-door .architecture-stage{transform:scale(1.24)}
.scene-plane{position:absolute;left:50%;bottom:0;width:max(100%,133.333dvh);height:max(100%,75dvw);transform:translateX(-50%)}
.architecture-stage picture{display:block;width:100%;height:100%}
.immersive-arrival .entrance-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%;filter:none}
.entrance-film{position:absolute;left:43.333333%;top:62.555556%;width:12%;height:29.333333%;opacity:0;transition:opacity .1s ease;pointer-events:none}
.entrance-film.visible{opacity:1}
.entrance-film>img,.immersive-arrival .door-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%;filter:none}
.immersive-arrival .door-video{opacity:0}.immersive-arrival .door-video.visible{opacity:1}
.winter-air{position:absolute;inset:0;pointer-events:none;z-index:2;background:linear-gradient(180deg,#101d2d75 0%,#17273920 15%,transparent 32%,transparent 77%,#12202d45 100%)}
.snowfall{position:absolute;inset:0;z-index:3;width:100%;height:100%;pointer-events:none;opacity:.65;transition:opacity .6s}
.immersive-arrival .arrival-heading{position:absolute;inset:0 0 auto;background:linear-gradient(180deg,#12233435,transparent);padding:calc(clamp(28px,5vh,65px) + env(safe-area-inset-top)) 20px 35px;z-index:5;pointer-events:none;transition:opacity .55s;text-shadow:0 2px 20px #12233080}
.immersive-arrival .script-line{font-size:clamp(14px,1.25vw,17px);color:#ece3d0}
.immersive-arrival .arrival-heading h1{font-size:clamp(22px,2.5vw,36px);letter-spacing:.13em;margin-top:13px;font-weight:400;color:#fff6e5}
.immersive-arrival .fine-rule{margin-top:21px;background:#ede1c978;width:37px}
.immersive-arrival .arrival-footer{position:absolute;bottom:0;left:0;right:0;padding:20px 20px calc(34px + env(safe-area-inset-bottom));background:linear-gradient(0deg,#14233170,transparent);z-index:5;transition:opacity .6s;color:#fff6e3}
.immersive-arrival .entry-button{font-size:11px;letter-spacing:.20em;gap:42px;min-height:50px;border-bottom:1px solid #e7d9bd9c;text-shadow:0 1px 7px #14233380}
.immersive-arrival .entry-button:hover{border-bottom-color:#fff5dd}
.immersive-arrival button:focus-visible{outline:2px solid #fff0cd;outline-offset:6px}
.immersive-arrival .entering{font-size:13px;text-shadow:0 1px 6px #142333}
.continue-entry{font-size:11px;opacity:0;pointer-events:none;min-height:32px;text-decoration:underline;text-underline-offset:4px;animation:skip-reveal .4s ease 2.3s forwards}
@keyframes skip-reveal{to{opacity:.85;pointer-events:auto}}
.is-opening .arrival-heading{opacity:0}.is-opening .snowfall{opacity:0}
#arrival-view{position:relative;z-index:2;opacity:1;transition:opacity .72s cubic-bezier(.4,0,.3,1)}
#arrival-view.is-revealing{opacity:0;pointer-events:none}
#invitation-view.is-prepared{position:fixed;inset:0;z-index:1;overflow:auto;pointer-events:none}
.is-settling .arrival-footer{opacity:0}
@media(max-width:759px){.is-at-door .architecture-stage{transform:scale(1.14)}.immersive-arrival .arrival-heading{padding-top:calc(29px + env(safe-area-inset-top));background:linear-gradient(180deg,#101d2db0,transparent)}.immersive-arrival .arrival-heading h1{font-size:24px}.immersive-arrival .fine-rule{margin-top:17px}.immersive-arrival .arrival-footer{padding-bottom:calc(32px + env(safe-area-inset-bottom));background:linear-gradient(0deg,#12202da0,transparent)}}
@media(max-height:600px){.immersive-arrival .arrival-heading{padding-top:19px}.immersive-arrival .script-line{font-size:12px}.immersive-arrival .arrival-heading h1{font-size:20px;margin-top:8px}.immersive-arrival .fine-rule{display:none}.immersive-arrival .arrival-footer{padding-bottom:20px}}
@media(prefers-reduced-motion:reduce){.snowfall{display:none}.architecture-stage{will-change:auto;transition:none}.entrance-film{transition:none}}
