/* A short brand entrance. The meter follows the animation, not a network download. */
.intro{position:fixed;inset:0;z-index:100;overflow:hidden;background:var(--t203);transition:opacity .6s ease,visibility .6s,background .55s ease;--progress:0%}
.intro.is-hidden{opacity:0;visibility:hidden;pointer-events:none;filter:none}
.intro-atmosphere{position:absolute;inset:-10%;background:radial-gradient(ellipse at 48% 40%,var(--t204),transparent 40%),radial-gradient(ellipse at 58% 56%,var(--t205),transparent 48%);animation:entry-atmosphere 2.65s ease both;transition:opacity .55s ease}
.intro::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;background:radial-gradient(1px 1px at 17% 29%,var(--t206),transparent),radial-gradient(1px 1px at 27% 73%,var(--t207),transparent),radial-gradient(1px 1px at 77% 38%,var(--t206),transparent),radial-gradient(1px 1px at 67% 18%,var(--t207),transparent),radial-gradient(1px 1px at 86% 68%,var(--t207),transparent)}
#intro-particles{position:absolute;inset:0;width:100%;height:100%;transform:translateY(-3%);transition:transform .6s ease,opacity .6s ease}
.intro.is-hidden #intro-particles{transform:translateY(-4.5%) scale(1.05);opacity:0}
.intro-wordmark{position:absolute;left:5%;top:6%;font:600 13px var(--mono);letter-spacing:3px;color:var(--t208)}
.intro-wordmark>i{font-style:normal;font-weight:300;color:var(--t209);margin-inline:10px}
.intro-streaks{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.intro-streaks>i{position:absolute;left:10%;top:28%;width:140px;height:1px;background:linear-gradient(90deg,transparent,var(--t210),var(--t211));transform-origin:right;opacity:0;box-shadow:0 0 13px var(--t212);animation:entry-streak 1.1s .2s ease-out both}
.intro-streaks>i:nth-child(2){left:71%;top:65%;width:90px;background:linear-gradient(90deg,transparent,var(--t213));animation-delay:.85s;animation-duration:1.3s}
.intro-streaks>i:nth-child(3){left:77%;top:27%;width:110px;animation-delay:1.5s;animation-duration:1s}
.intro-scan{position:absolute;left:50%;right:auto;top:47%;width:min(56vw,610px);height:1px;opacity:0;pointer-events:none;background:linear-gradient(90deg,transparent,var(--t214) 35%,var(--t215) 50%,var(--t216) 65%,transparent);box-shadow:0 0 18px var(--t217)}
.intro[data-phase=reveal] .intro-scan{animation:entry-sweep 1.3s ease both}
.intro-loading{position:absolute;top:max(calc(50% + min(23vw,205px)),calc(47% + 25vmin + 40px));left:50%;width:min(330px,64vw);transform:translateX(-50%);animation:entry-loader-in .6s .15s both;transition:opacity .4s ease,margin-top .4s ease}
.intro-loading-meta{display:flex;align-items:baseline;justify-content:flex-end;margin-bottom:15px;color:var(--t218)}
#intro-status{position:absolute;left:50%;top:calc(47% - 27vmin - 16px);transform:translate(-50%,-100%);white-space:nowrap;text-align:center;color:var(--t218);font-size:10px;letter-spacing:3px;animation:entry-loader-in .6s .15s both;transition:color .25s ease,opacity .4s ease}
.intro-percentage{display:flex;align-items:baseline;gap:5px;font-family:var(--mono);color:var(--t219);white-space:nowrap}
.intro-percentage b{font-size:24px;line-height:1;font-weight:400;font-variant-numeric:tabular-nums;min-width:3ch;text-align:right;text-shadow:0 0 18px var(--t220)}
.intro-percentage>span{font-size:10px;color:var(--t221)}
.intro-meter{height:2px;position:relative;background:var(--t222)}
.intro-meter-fill{position:absolute;inset:0 auto 0 0;width:var(--progress);background:linear-gradient(90deg,var(--t223),var(--t224) 57%,var(--t225));box-shadow:0 0 10px var(--t226);transition:width .06s linear}
.intro-meter-fill::after{content:"";position:absolute;right:0;top:-2px;width:2px;height:6px;background:var(--t227);box-shadow:0 0 10px var(--t228),0 0 23px var(--t076)}
.intro-ticks{display:flex;justify-content:space-between;margin-top:9px}
.intro-ticks>i{display:block;width:1px;height:3px;background:var(--t229)}
.intro[data-phase=ready] #intro-status,.intro[data-phase=departure] #intro-status{color:var(--t225)}
.intro[data-phase=ready] .intro-meter-fill{box-shadow:0 0 15px var(--t094)}
.intro[data-phase=departure]{background:var(--t230)}
.intro[data-phase=departure] .intro-atmosphere{animation:none;opacity:0}
.intro[data-phase=departure]::before{opacity:0;transition:opacity .55s ease}
.intro[data-phase=departure] .intro-loading{animation:none;opacity:0;transition:opacity .4s .1s ease}
.intro[data-phase=departure] #intro-status{animation:none;opacity:0;transition:opacity .35s ease}
.intro[data-phase=departure] .intro-wordmark{opacity:0;transition:opacity .15s ease}
.intro.is-hidden .intro-loading{opacity:0;margin-top:-8px}
.intro-skip{position:absolute;right:5%;bottom:6%;display:flex;align-items:center;gap:14px;color:var(--t231);font-size:11px;padding:10px 0}
.intro-skip>.icon{height:15px;width:15px}
.intro.is-hidden .intro-atmosphere,.intro.is-hidden .intro-streaks>i,.intro.is-hidden .intro-loading,.intro.is-hidden #intro-status{animation:none}
@keyframes entry-atmosphere{from{opacity:.25;transform:scale(1.12)}45%,to{opacity:1;transform:scale(1)}}
@keyframes entry-streak{0%{opacity:0;transform:translate(-90px,50px) rotate(-29deg) scaleX(.4)}25%{opacity:.7}100%{opacity:0;transform:translate(130px,-73px) rotate(-29deg) scaleX(1)}}
@keyframes entry-sweep{0%{opacity:0;transform:translate(-50%,-120px) scaleX(.7)}25%{opacity:.65}75%{opacity:.45}100%{opacity:0;transform:translate(-50%,140px) scaleX(1.1)}}
@keyframes entry-loader-in{from{opacity:0;margin-top:8px}to{opacity:1;margin-top:0}}
@media(max-width:650px){.intro-wordmark{top:5%;left:7%;font-size:11px}.intro-skip{right:7%;bottom:5%;font-size:10px}.intro-loading{width:min(280px,70vw);top:calc(50% + min(27vw,170px))}.intro-percentage b{font-size:22px}.intro-loading-meta{margin-bottom:13px}#intro-status{font-size:9px;letter-spacing:2px}.intro-streaks>i{left:3%;width:75px}.intro-streaks>i:nth-child(2){left:72%;width:55px}.intro-streaks>i:nth-child(3){left:70%;width:70px}.intro-scan{width:80vw}}
@media(max-height:500px){.intro-loading{top:auto;bottom:10%;width:260px}.intro-loading-meta{margin-bottom:10px}.intro-percentage b{font-size:19px}#intro-particles{transform:translateY(-6%)}#intro-status{top:calc(44% - 27vmin - 12px)}.intro-skip{bottom:4%}.intro-wordmark{top:7%}}
@media(prefers-reduced-motion:reduce){.intro,.intro *{animation:none!important;transition:none!important}}
