/* Ground departure, a live flight deck, and scroll-linked project encounters. */
#space-field{opacity:var(--space-visibility,0)}.launch-sticky{background:linear-gradient(180deg,#082443,#07172c 65%,transparent)}.spaceport-scene{position:absolute;inset:0;z-index:0;opacity:var(--port-opacity,1);transform:translateY(var(--port-y,0));will-change:transform,opacity}.spaceport-scene img{width:100%;height:100%;object-fit:cover;object-position:70.5% 75%;display:block}.spaceport-scene:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#03101b88,transparent 70%)}.launch-art{z-index:1}.launch-earth{display:none}.hero #ascii{z-index:1;opacity:calc(.18 * var(--ground-opacity,1));right:12%;top:150px;width:40%;height:50%}.hero-copy{z-index:3!important}.hero-topline,.hero-footer,.flight-caption{z-index:5}.launch-rocket{left:70.5%;width:min(25vw,31vh);height:min(37.5vw,46.5vh);top:calc(75% - min(37.5vw,46.5vh));transform:translateX(-50%) translate3d(var(--rocket-x,0px),var(--rocket-y,0px),0) rotate(var(--rocket-rotate,0deg)) scale(var(--rocket-scale,1));transform-origin:50% 85%}.launch-rocket>img{filter:drop-shadow(0 0 10px #85d5ff28)}.engine-trail{opacity:var(--exhaust-opacity,0)}.launch-vapour{position:absolute;left:45%;right:0;bottom:8%;height:28%;z-index:2;pointer-events:none;background:radial-gradient(ellipse at 48% 65%,#d5faffbb,transparent 65%),radial-gradient(ellipse at 70% 75%,#e2faff88,transparent 55%);filter:blur(19px);opacity:var(--vapour,0);transform:scale(calc(1 + var(--vapour,0) * .6))}.flight-caption{right:7%;bottom:80px;font-size:8px}.hero-footer{text-shadow:0 1px 8px #00101c}
.cockpit-glass{position:fixed;inset:87px 0 0;z-index:14;pointer-events:none;opacity:var(--cockpit-opacity,0);clip-path:polygon(2% 3%,98% 3%,95% 82%,5% 82%);background:linear-gradient(140deg,#2cbdff0e,#238bf914 55%,#5cddff0a),repeating-linear-gradient(0deg,#63bafa0c 0 1px,transparent 1px 5px),repeating-linear-gradient(90deg,#6ecfff09 0 1px,transparent 1px 64px);box-shadow:inset 0 0 120px #238bf922}.glass-scan{position:absolute;inset:0;background:linear-gradient(180deg,transparent 15%,#58d9ff07 45%,#7ddfff13 50%,transparent 56%);animation:glass-sweep 14s linear infinite}.flight-cockpit{z-index:9}.holo-projector{position:absolute;left:50%;bottom:7%;width:200px;height:170px;transform:translateX(-50%);pointer-events:none;isolation:isolate}.holo-projector canvas{position:absolute;inset:0;width:100%;height:100%;z-index:2;opacity:.83}.holo-beam{position:absolute;inset:9% 10% 0;clip-path:polygon(0 0,100% 0,59% 100%,41% 100%);background:linear-gradient(0deg,#8affff4d,#2cddc515 50%,#238bf905);filter:blur(3px);animation:beam-breathe 5.6s ease-in-out infinite}.holo-base{position:absolute;left:31%;right:31%;height:10%;bottom:-2%;border:1px solid #82ffff7a;border-radius:50%;box-shadow:0 0 15px #2cddc599,0 0 35px #238bf966,inset 0 0 15px #65ffff88;transform:perspective(300px) rotateX(35deg);animation:beam-breathe 5.6s ease-in-out infinite}.console-glow{position:absolute;bottom:3.7%;height:11%;width:25%;background:radial-gradient(ellipse,#7effff4a,#238bf914 55%,transparent 74%);mix-blend-mode:screen;filter:blur(4px);transform:perspective(260px) rotateX(50deg);opacity:.18;pointer-events:none}.console-left{left:8%;animation:console-left 9.7s ease-in-out infinite}.console-centre{left:39%;width:22%;animation:console-centre 13.1s ease-in-out infinite}.console-right{right:8%;animation:console-right 11.3s ease-in-out infinite}
@keyframes glass-sweep{0%{transform:translateY(-80%)}100%{transform:translateY(100%)}}@keyframes beam-breathe{0%,100%{opacity:.45}50%{opacity:.8}}@keyframes console-left{0%,28%,48%,100%{opacity:.12}34%,40%{opacity:.6}37%{opacity:.24}75%{opacity:.36}}@keyframes console-centre{0%,20%,39%,100%{opacity:.16}26%{opacity:.5}32%{opacity:.26}64%,70%{opacity:.58}67%{opacity:.31}}@keyframes console-right{0%,15%,46%,100%{opacity:.13}22%,28%{opacity:.55}25%{opacity:.2}79%{opacity:.42}}
.project-window{width:40%;height:31vh;max-height:350px;top:34%;right:8%;background:#09283b40;border-color:#7bdef04d;box-shadow:0 0 35px #0b8bbf18,0 18px 55px #0005;backdrop-filter:blur(5px);opacity:calc(var(--encounter,1) * .9);transform:translateY(var(--encounter-lift,0));transition:none}.project-window img{opacity:.72;mix-blend-mode:screen}.project-window>span{background:linear-gradient(transparent,#09243cbd);padding:15px}.project-window small{font-size:7px}.project-window b{font-size:10px;letter-spacing:1px}.planet-right .project-window{left:8%;right:auto}.project-window:hover img{opacity:.92}.planet-info{width:46%;max-width:560px;opacity:var(--encounter,1);transform:translateY(var(--encounter-lift,0));text-shadow:0 2px 15px #000;background:radial-gradient(ellipse at 20% 50%,#030e2080,transparent 75%);pointer-events:auto}.gallery-caption{align-items:flex-end;bottom:139px;pointer-events:none}.planet-right .planet-info{margin-left:auto}.view-detail{display:flex;align-items:center;gap:28px;margin-top:13px;border:1px solid #8de6ee80;border-radius:2px;padding:10px 14px;color:#a4ffef;background:#0a2a3c80;font:9px monospace;letter-spacing:1.8px;backdrop-filter:blur(7px)}.view-detail:hover{background:#2cddc5;color:#051827}.view-detail span{font-size:14px}.gallery-controls{position:absolute;right:0;bottom:-28px}.planet-right .gallery-controls{left:0;right:auto}.gallery-caption>div>p:last-of-type{font-size:11px;color:#bfd9e6;line-height:1.7}.gallery-caption h3{font-size:clamp(22px,2.2vw,34px);margin-bottom:7px}.gallery-caption .eyebrow{margin-bottom:6px}.gallery-progress{bottom:111px}.gallery-hint{bottom:91px}.landing-rocket{transform:translate(var(--landing-shift,0),var(--landing-y,0px)) rotate(var(--landing-angle,10deg)) scale(var(--landing-scale,1));transform-origin:50% 60%;will-change:transform}.alien-world>img{filter:saturate(.82) hue-rotate(-7deg)}.landing-pad{display:block;width:20px;height:8px;transform:none;border:1px solid #8de4ee88;box-shadow:0 0 10px #2cddc566;opacity:var(--arrival,0)}.arrival-signal{font-size:7px;color:#94e7e7}.contact{width:100vw;max-width:100%;height:100vh;height:100svh;min-height:620px;padding:120px var(--pad) 55px;display:flex;flex-direction:column;justify-content:space-between;scroll-margin-top:-90px}.contact>.eyebrow{margin:25px 0 0}.contact h2{margin:15px 0 25px;font-size:clamp(64px,10vw,160px)}.contact-bottom{flex-shrink:0}.contact h2>span{right:1%}.contact .section-label{flex-shrink:0}
body.reduced .glass-scan,body.reduced .holo-beam,body.reduced .holo-base,body.reduced .console-glow{animation:none}body.reduced .holo-projector{opacity:.7}body.reduced .launch-rocket{transform:translateX(-50%)}body.reduced .spaceport-scene{opacity:1;transform:none}body.reduced .launch-vapour,body.reduced .engine-trail{opacity:0}body.reduced .landing-rocket{transform:translate(3vw,150px) scale(.03)}
@media(min-height:900px){.project-window{top:33%;height:34vh;max-height:420px}.gallery-caption{bottom:245px}.gallery-progress{bottom:214px}.gallery-hint{bottom:194px}.gallery-controls{bottom:-10px}.holo-projector{width:240px;height:205px}.contact{padding-top:135px;padding-bottom:75px}.contact h2{font-size:clamp(100px,11vw,175px)}}
@media(min-width:701px) and (max-height:899px){.gallery-space{top:250px;bottom:285px}.orbit-card{width:245px;height:245px}.orbit-card:nth-child(4n+2){width:325px;height:245px}.project-window{top:33%;height:31vh}.planet-info{max-width:43%}.gallery-caption{bottom:137px}.view-detail{margin-top:9px;padding:8px 13px}.gallery-caption h3{font-size:25px}.gallery-caption .eyebrow{font-size:8px}.gallery-caption>div>p:last-of-type{font-size:10px}}
@media(max-width:1000px){.project-window{width:41%;height:27vh;top:36%}.gallery-caption h3{font-size:23px}.holo-projector{width:160px;height:140px}.contact h2{font-size:11vw}.contact-bottom p{font-size:12px}.contact-cta{gap:40px}}
@media(max-width:700px){.spaceport-scene{top:32%;height:68%;bottom:auto}.spaceport-scene:after{background:linear-gradient(180deg,#082443,transparent 28%)}.spaceport-scene img{object-position:70.5% 75%}.launch-sticky{background:linear-gradient(#071a31,#082443 50%,#051525)}.launch-rocket{left:70.5%;top:calc(83% - 138px);width:92px;height:138px}.hero #ascii{right:5%;width:65%;height:30%;top:130px;opacity:calc(.15 * var(--ground-opacity,1))}.flight-caption{left:var(--pad);right:auto;bottom:44px;font-size:6px}.launch-vapour{left:30%;bottom:7%;height:18%}.cockpit-glass{top:72px;clip-path:polygon(3% 3%,97% 3%,94% 82%,6% 82%);background:linear-gradient(130deg,#238bf912,#2cddc509),repeating-linear-gradient(0deg,#63bafa0a 0 1px,transparent 1px 5px),repeating-linear-gradient(90deg,#6ecfff08 0 1px,transparent 1px 48px)}.holo-projector{width:106px;height:94px;bottom:7.2%}.holo-projector canvas{opacity:.74}.console-glow{filter:blur(2px)}.project-window{width:45%;height:145px;max-height:none;top:40%;right:7%}.planet-right .project-window{left:7%}.project-window>span{padding:9px}.project-window b{font-size:7px;letter-spacing:.6px}.gallery-space{top:215px;bottom:270px}.orbit-card{width:185px;height:185px}.orbit-card:nth-child(4n+2){width:240px;height:185px}.orbit-card .orbit-card-label{font-size:4px}.gallery-caption{bottom:121px;left:9vw;right:9vw;gap:6px}.planet-info{width:73%;max-width:73%}.planet-right .planet-info{margin-left:0}.gallery-caption h3{font-size:17px;max-width:none}.gallery-caption .eyebrow{font-size:6px;letter-spacing:1px}.gallery-caption>div>p:last-of-type{font-size:8px;line-height:1.6;margin:0}.view-detail{font-size:7px;letter-spacing:1px;gap:18px;margin-top:8px;padding:7px 10px}.view-detail span{font-size:11px}.gallery-controls,.planet-right .gallery-controls{right:0;left:auto;bottom:3px}.gallery-progress{bottom:103px}.gallery-hint{bottom:86px;font-size:5px}.contact{min-height:0;height:100svh;padding:100px 6vw 40px}.contact>.eyebrow{font-size:10px;margin:18px 0 0}.contact h2{font-size:14.4vw;margin:20px 0;line-height:1.03}.contact .section-label{font-size:7px}.contact-bottom p{font-size:11px;line-height:1.9}.contact-cta{margin-top:20px;font-size:12px}.landing-pad{width:10px;height:4px}.arrival-signal{font-size:4px}body.reduced .landing-rocket{transform:translate(3vw,155px) scale(.04)}}
@media(max-height:650px) and (min-width:701px){.contact{min-height:100svh;padding-top:105px;padding-bottom:30px}.contact h2{font-size:9vw;line-height:.92}.contact>.eyebrow{margin-top:12px}.contact h2{margin:10px 0}.contact-bottom p{font-size:11px}.contact-cta{padding:16px 25px}}

/* Atmospheric sky clears as the rocket reaches orbit. */
.launch-sticky{background:transparent}.launch-sticky:before{content:'';position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(#071a31,#082443 50%,#051525);opacity:var(--atmo-opacity,1)}body.reduced .launch-sticky:before{opacity:1}
