.launch-screen{display:none}
.launch-playing{overflow:hidden}
.launch-playing .launch-screen{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;background:#f4f8ff;overflow:hidden;isolation:isolate;animation:launch-curtain .6s 1.5s cubic-bezier(.76,0,.24,1) both}
.launch-screen:before{content:"";position:absolute;inset:0;background:#fff;transform:skewY(-9deg) translateY(-52%);transform-origin:center;z-index:-1}
.launch-grid{position:absolute;inset:0;z-index:-1;background-image:linear-gradient(#3b82f60a 1px,transparent 1px),linear-gradient(90deg,#3b82f60a 1px,transparent 1px);background-size:72px 72px;animation:launch-grid-in 1.6s both}
.launch-signature{text-align:center;padding:24px;width:100%;transform:translateY(-14px)}
.launch-mark{width:128px;height:128px;margin:0 auto 22px;overflow:hidden;animation:launch-mark-in 1s cubic-bezier(.16,1,.3,1) both}
.launch-mark img{display:block;width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.launch-name{overflow:hidden}
.launch-name p{font-size:48px;font-weight:750;line-height:1.3;margin:0;color:var(--ink);animation:launch-name-in .9s .12s cubic-bezier(.16,1,.3,1) both}
.launch-rule{width:112px;height:2px;background:#dce8f7;margin:26px auto 22px;overflow:hidden;animation:launch-copy-in .6s .25s both}
.launch-rule span{display:block;height:100%;width:100%;background:linear-gradient(90deg,#3b82f6 65%,#17a398);transform-origin:left;animation:launch-rule-in 1s .2s cubic-bezier(.16,1,.3,1) both}
.launch-message{font-size:16px;line-height:1.8;color:var(--muted);margin:0;animation:launch-copy-in .8s .35s both}
.launch-caption{position:absolute;bottom:max(36px,env(safe-area-inset-bottom));font-size:10px;font-weight:500;color:#8a9cb3;animation:launch-copy-in 1s .3s both}
.launch-skip{position:absolute;right:max(24px,env(safe-area-inset-right));top:max(24px,env(safe-area-inset-top));min-height:44px;padding:10px 4px;background:transparent;border:0;color:#65768c;font-size:13px;display:flex;align-items:center;gap:8px;animation:launch-copy-in .5s .4s both}
.launch-skip:hover{color:var(--blue)}
.launch-exiting .launch-signature{transition:transform .6s cubic-bezier(.76,0,.24,1);transform:translateY(-48px)}
.launch-playing .header,.launch-playing .download-inner>.eyebrow,.launch-playing .app-icon,.launch-playing h1,.launch-playing .tagline,.launch-playing .intro,.launch-playing .download-actions,.launch-playing .assurances{animation-play-state:paused}
@keyframes launch-mark-in{from{opacity:0;transform:translateY(22px) scale(.9);clip-path:inset(100% 0 0)}to{opacity:1;transform:none;clip-path:inset(0)}}
@keyframes launch-name-in{from{transform:translateY(110%)}to{transform:translateY(0)}}
@keyframes launch-copy-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@keyframes launch-rule-in{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes launch-grid-in{from{opacity:0;transform:scale(1.08)}to{opacity:1;transform:scale(1)}}
@keyframes launch-curtain{0%{clip-path:inset(0);visibility:visible}99%{visibility:visible}100%{clip-path:inset(0 0 100%);visibility:hidden;pointer-events:none}}
@media(max-width:767px){.launch-mark{width:112px;height:112px;margin-bottom:20px}.launch-name p{font-size:36px}.launch-message{font-size:14px}.launch-rule{margin-block:22px 18px}.launch-grid{background-size:48px 48px}}
@media(prefers-reduced-motion:reduce){.launch-playing{overflow:auto}.launch-playing .launch-screen{display:none}}
