.purchase-dialog.handover-dialog{position:fixed;inset:0;margin:0;width:100vw;height:100dvh;max-width:none;max-height:none;padding:0;border:0;border-radius:0;background:#030407;color:#f1f2f4;overflow:hidden;box-shadow:none;animation:arrival-open .7s ease both}
.handover-dialog::backdrop{background:#020305}
.handover-dialog #purchase-content,.arrival-cinema{width:100%;height:100%}
.handover-dialog>.close-dialog{position:absolute;z-index:5;right:clamp(20px,3vw,50px);top:25px;width:36px;height:36px;color:#babdc5;background:#07090c66;border:1px solid #ffffff20;border-radius:50%;font-size:23px}
.arrival-cinema{position:relative;isolation:isolate;--progress:0;background:#030407;transition:opacity .55s ease}
.arrival-cinema video{position:absolute;left:50%;top:50%;width:min(100%,calc(100dvh * var(--film-ratio,1.76470588)));height:auto;aspect-ratio:var(--film-ratio,1.76470588);transform:translate(-50%,-50%);object-fit:contain;background:#030407;-webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 7%,#000 78%,#000d 85%,#0006 92%,#0001 97%,transparent 100%);mask-image:linear-gradient(180deg,transparent 0%,#000 7%,#000 78%,#000d 85%,#0006 92%,#0001 97%,transparent 100%)}
.arrival-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#020305b0 0,transparent 24%,transparent 64%,#020305e8 100%)}
.arrival-top{position:absolute;inset:35px clamp(24px,5vw,90px) auto;display:flex;align-items:center;gap:36px;padding-right:45px}
.arrival-brand{font:600 18px Inter,sans-serif;letter-spacing:.02em}.arrival-brand>span{font-size:8px;vertical-align:top;margin-left:5px}
.arrival-chapter,.arrival-eyebrow{font:400 9px Inter,sans-serif;letter-spacing:.24em;color:#bfc3cc}
.arrival-chapter{padding-left:28px;border-left:1px solid #ffffff32}
.arrival-intro{position:absolute;left:clamp(24px,5vw,90px);top:17%;transition:opacity 1s,transform 1s;pointer-events:none;text-shadow:0 2px 25px #000}
.arrival-intro h2{font:400 clamp(32px,4.4vw,72px)/1.05 Inter,sans-serif;letter-spacing:-.055em;margin:18px 0 0;color:#f0f1f3db}
[data-phase=film] .arrival-intro,[data-phase=ending] .arrival-intro{opacity:0;transform:translateY(-12px)}
.arrival-bottom{position:absolute;bottom:42px;left:clamp(24px,5vw,90px);right:clamp(24px,5vw,90px);display:flex;justify-content:space-between;align-items:end;gap:25px;z-index:3}
.arrival-address{display:flex;flex-direction:column;gap:10px;min-width:0}.arrival-region{font:400 10px Inter,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#b5b9c3}
.arrival-coordinates{font:400 clamp(13px,1.25vw,19px) Inter,sans-serif;letter-spacing:.045em;font-variant-numeric:tabular-nums;color:#eff1f5;overflow-wrap:anywhere}
.arrival-controls{display:flex;gap:14px;align-items:center;flex-shrink:0}.arrival-controls button{padding:13px 20px;border-radius:30px;font:500 11px Inter,sans-serif;cursor:pointer;backdrop-filter:blur(10px)}
.handover-sound{display:flex;align-items:center;gap:10px;background:#080a1066;color:#bfc3ca;border:1px solid #ffffff24}.handover-skip{background:#e6e8efeb;color:#14171e;border:1px solid #fff6}
.arrival-controls button:focus-visible{outline:2px solid #e3e6ef;outline-offset:4px}
.arrival-equalizer{display:flex;align-items:center;gap:2px;height:12px}.arrival-equalizer i{height:3px;width:2px;background:currentColor}.handover-sound[aria-pressed=true] i{animation:arrival-wave 1s ease-in-out infinite alternate}.handover-sound[aria-pressed=true] i:nth-child(2){animation-delay:-.6s}.handover-sound[aria-pressed=true] i:nth-child(3){animation-delay:-.3s}
.arrival-track{position:absolute;bottom:0;left:0;right:0;height:2px;background:#fff1}.arrival-track span{display:block;height:100%;background:#c9d0dd88;transform:scaleX(var(--progress));transform-origin:left;transition:transform .3s linear}
.arrival-ending{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:16px;text-align:center;padding:85px 24px 140px;opacity:0;transform:translateY(12px);pointer-events:none;transition:opacity 1.2s,transform 1.2s;background:#020408bd}
.arrival-ending h3{font:400 clamp(38px,5.3vw,84px)/1.02 Inter,sans-serif;letter-spacing:-.06em;margin:8px 0 12px;max-width:800px}
.arrival-emblem{width:38px;height:38px;border-radius:50%;background:radial-gradient(circle at 32% 30%,#f0f1f6,#838893 55%,#11151f 90%);box-shadow:0 0 42px #d1d8ef20;margin-bottom:8px}
.arrival-owner{font:400 clamp(17px,2vw,28px) Inter,sans-serif;color:#d5d9e2;max-width:100%;overflow-wrap:anywhere}.arrival-location{font:400 10px Inter,sans-serif;text-transform:uppercase;letter-spacing:.16em;color:#9da5b4}
[data-phase=ending] .arrival-ending{opacity:1;transform:none}[data-phase=ending] .arrival-track span{transform:scaleX(1)}[data-phase=leaving]{opacity:0}
.arrival-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.certificate-replay{display:block;margin-top:16px;width:100%;padding:11px;border:0;border-top:1px solid #282b32;background:none;color:#acb0b9;font:400 11px Inter,sans-serif;cursor:pointer}
.certificate-dialog.arrival-reveal{animation:arrival-certificate .7s ease both}
@keyframes arrival-open{from{opacity:0}to{opacity:1}}@keyframes arrival-certificate{from{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:none}}@keyframes arrival-wave{to{height:12px}}
@media(max-width:650px){.arrival-top{top:30px;gap:16px}.arrival-brand{font-size:14px}.arrival-chapter{font-size:7px;padding-left:14px;letter-spacing:.12em}.arrival-intro{top:18%}.arrival-intro h2{font-size:39px}.arrival-bottom{bottom:max(24px,env(safe-area-inset-bottom));flex-direction:column;align-items:stretch;gap:24px}.arrival-controls{justify-content:space-between}.arrival-controls button{font-size:10px;padding:13px 17px}.arrival-address{gap:8px}.arrival-coordinates{font-size:12px}.arrival-ending{padding-bottom:170px}.arrival-ending h3{font-size:44px}}
@media(max-height:540px) and (min-width:651px){.arrival-top{top:20px}.arrival-intro{top:24%}.arrival-intro h2{font-size:36px}.arrival-bottom{bottom:20px}.arrival-ending{gap:8px;padding:65px 20px 90px}.arrival-ending h3{font-size:42px}.arrival-emblem{width:24px;height:24px}}
.handover-still,.handover-still *{animation:none!important;transition:none!important}
@media(prefers-reduced-motion:reduce){.handover-dialog,.handover-dialog *,.certificate-dialog.arrival-reveal{animation:none!important;transition:none!important}}
