header{position:relative;z-index:10;background:#e7e6d6f2}nav a{position:relative}nav a:after{content:'';position:absolute;left:0;right:100%;bottom:-6px;height:1px;background:#355b3c;transition:right .3s}nav a:hover:after{right:0}.travel-intro{position:relative;min-height:770px;height:87vh;max-height:1100px;overflow:hidden;border-bottom:1px solid #b9c0a8;background:#e3e6d2}.travel-intro-copy{position:absolute;left:7%;top:13%;z-index:3;max-width:550px}.travel-intro-copy>.eyebrow{font-size:7px;letter-spacing:.15em;color:#7d9270}.travel-intro-copy h2{font-size:clamp(80px,9vw,148px);line-height:.83;margin:35px 0;letter-spacing:-.035em;font-weight:500}.travel-intro-copy h2 em{font-style:italic;color:#829d70}.travel-intro-copy>p{font-size:13px;line-height:1.8;color:#7b916a}.travel-intro-copy .button{font-size:8px;margin-top:25px;gap:35px;padding:18px 22px;background:#355a38}.departure-stamp{display:flex;flex-direction:column;position:absolute;left:340px;top:70px;border:1px solid #8fa178;padding:18px 25px;transform:rotate(-11deg);border-radius:50%;width:145px;height:85px;justify-content:center;text-align:center;opacity:.7}.departure-stamp strong{font:500 26px 'Barlow Condensed';color:#6d8759}.departure-stamp>span{font:5px 'IBM Plex Mono';margin-top:6px;color:#91a17c;letter-spacing:.03em}.travel-intro-image{position:absolute;left:44%;right:-15%;top:10%;bottom:10%;transform:translate3d(var(--pointer-x,0px),var(--pointer-y,0px),0);transition:transform 1s;overflow:visible}.travel-intro-image>img{width:100%;height:100%;object-fit:cover;object-position:43% center;border-radius:50% 0 0 50%;box-shadow:-25px 15px 80px #4a6a3015;animation:ship-float 12s ease-in-out infinite;filter:saturate(.82)}.travel-intro-image:before{content:'';position:absolute;inset:-20px;border:1px solid #8fa97a44;border-radius:50% 0 0 50%;pointer-events:none;z-index:1}.intro-orbit{position:absolute;inset:0 15% 0 -10%;border:1px solid #728f5f55;border-radius:50%;transform:rotate(-24deg) scaleY(.4);pointer-events:none}.intro-orbit:after{content:'';width:8px;height:8px;border-radius:50%;background:#9fb98a;position:absolute;left:15%;top:12%;box-shadow:0 0 0 6px #bdcba744}.intro-image-label{position:absolute;left:8%;bottom:-25px;font:6px 'IBM Plex Mono';letter-spacing:.1em;color:#7c9469;z-index:2}.intro-image-label.second{left:auto;right:26%;bottom:6%;font-size:6px;line-height:1.7;color:#f1f0d4;text-shadow:0 1px 7px #092a13}.travel-intro-bottom{position:absolute;bottom:30px;left:5%;right:5%;display:flex;justify-content:space-between;font:6px 'IBM Plex Mono';letter-spacing:.12em;color:#849a71;z-index:2}.terminal{padding-top:25px;padding-bottom:70px;transition:background .6s}.departure-board{padding-bottom:30px}.departure-board strong{font-size:13px}.boarding-tools{display:flex;align-items:center;justify-content:space-between;font:6px 'IBM Plex Mono';letter-spacing:.09em;margin-bottom:17px;color:#7f956e}.seat-picker{display:flex;align-items:center;gap:5px}.seat-picker>span{margin-right:10px}.seat-picker>button,#cabin-light{background:transparent;border:1px solid #b4c09f;color:#799366;padding:8px 11px;font:6px 'IBM Plex Mono';letter-spacing:.04em}.seat-picker>button[aria-pressed=true]{background:#426442;color:#f4f7de;border-color:#426442}#cabin-light{padding:8px 14px}.window-frame{padding:13px;border-radius:140px 140px 12px 12px;box-shadow:inset 0 0 0 4px #f7f5df,0 25px 45px #4f602b1a;transition:background .7s,box-shadow .7s}.window{height:min(720px,75vh);min-height:580px;border-radius:125px 125px 6px 6px}.window>img{transition:opacity .8s,transform 3s,object-position 1.2s}.window-shade{z-index:1;pointer-events:none;background:linear-gradient(90deg,#08251ed9 0%,#08251e66 42%,transparent 82%),linear-gradient(0deg,#08251e88,transparent 35%)}.welcome,.travel-overlay,.arrival{z-index:3}.welcome{top:17%}.welcome h1{font-size:clamp(60px,6vw,94px)}.window-label{z-index:5}.window-hud{position:absolute;z-index:5;left:7%;right:7%;top:35px;display:flex;justify-content:space-between;font:6px 'IBM Plex Mono';letter-spacing:.12em;color:#d4e3bd;text-shadow:0 1px 10px #10301d}.window-hud>span{border-top:1px solid #b4d19a55;padding-top:8px}.flight-streaks{position:absolute;inset:0;pointer-events:none;z-index:2;opacity:0;transition:opacity .6s}.travelling .flight-streaks{opacity:.7}.flight-streaks>i{position:absolute;left:0;top:20%;height:1px;width:150px;background:linear-gradient(90deg,transparent,#e2f3c3aa);animation:flight-streak 1.3s linear infinite}.flight-streaks>i:nth-child(2){top:35%;animation-delay:-.3s;width:230px}.flight-streaks>i:nth-child(3){top:60%;animation-delay:-.8s;width:90px}.flight-streaks>i:nth-child(4){top:75%;animation-delay:-.5s;width:200px}.flight-streaks>i:nth-child(5){top:49%;animation-delay:-1s;width:140px}.flight-streaks>i:nth-child(6){top:88%;animation-delay:-.2s;width:100px}.landmark{position:absolute;right:8%;top:38%;z-index:6;border:1px solid #c9dfad88;background:#14331d80;backdrop-filter:blur(8px);color:#e3edcf;font:6px 'IBM Plex Mono';letter-spacing:.1em;padding:12px 15px;display:flex;align-items:center;gap:10px}.landmark-pulse{width:5px;height:5px;border-radius:50%;background:#d9f0ba;box-shadow:0 0 0 5px #c4e3aa22;animation:landmark-pulse 3s ease-in-out infinite}.landmark-note{position:absolute;right:8%;top:48%;width:290px;z-index:7;background:#e9eed9ed;padding:23px;border:1px solid #cbd8af;box-shadow:0 15px 30px #12351e33;backdrop-filter:blur(10px);animation:note-enter .35s ease-out}.landmark-note>strong{font:500 13px 'IBM Plex Mono';color:#47663b}.landmark-note>p{font-size:11px;line-height:1.8;color:#84966f}.landmark-note>button{background:none;border:0;padding:4px 0;font:6px 'IBM Plex Mono';color:#6d8b5d}.terminal[data-cabin=night]{background:#cbd4bb}.terminal[data-cabin=night] .window-frame{background:#314b33;box-shadow:inset 0 0 0 4px #617953,0 25px 45px #20331e44}.terminal[data-cabin=night] .window>img{filter:brightness(.77) saturate(.8)}.terminal[data-cabin=night] #cabin-light{background:#3f603b;color:#e6efd1}.console{padding-top:45px}.route-option{transition:background .35s,border .35s,transform .35s}.route-option:not(:disabled):hover{transform:translateY(-3px);box-shadow:0 8px 15px #4d713b0d}.route-cost{font-size:32px}.route-option>span:nth-child(2)>small{font-size:9px}.route-map svg{height:85px}.trip-state>strong{font-size:110px}.energy-cells>i{transition:background .8s;box-shadow:inset 0 0 0 1px #6c875b15}.station-atlas{padding:85px 8%;background:#dbe3cd;border-top:1px solid #c2ccb0;border-bottom:1px solid #c2ccb0}.station-atlas-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:40px}.station-atlas-heading h2{font-size:clamp(50px,5vw,80px);margin:25px 0 0;line-height:.95}.station-atlas-heading em{font-style:normal;color:#8ca478}.station-atlas-heading>p{font-size:12px;line-height:1.8;color:#81986e;max-width:280px}.station-explorer{display:grid;grid-template-columns:1.4fr 1fr;background:#edf0dd;border:1px solid #becbad}.station-photo{position:relative;min-height:470px;overflow:hidden}.station-photo>img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;transition:transform 1s}.station-photo:hover>img{transform:scale(1.025)}.station-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#163218da,transparent 65%);pointer-events:none}.station-photo>div{position:absolute;bottom:30px;left:30px;right:30px;z-index:2;color:#e9edd8}.station-photo>div>span{font:6px 'IBM Plex Mono';letter-spacing:.12em;color:#bdd0a5}.station-photo>div>strong{font:400 35px/1 'Barlow Condensed';display:block;margin-top:15px;max-width:350px;letter-spacing:-.01em}.station-nav{padding:35px}.station-nav>button{display:flex;align-items:center;gap:15px;width:100%;border:0;border-bottom:1px solid #c6d1b7;padding:20px 0;background:none;font:500 10px 'IBM Plex Mono';color:#739060;text-align:left;transition:color .3s}.station-nav>button>span{font-size:7px;color:#a3b28e}.station-nav>button>b{margin-left:auto;font-size:17px;font-weight:400}.station-nav>button[aria-pressed=true]{color:#2d6034}.station-nav>button[aria-pressed=true]>b{transform:translate(3px,-3px)}.station-nav>p{font-size:11px;line-height:1.8;color:#8e9f7d;min-height:65px;margin-top:28px}.fictional-station{font:5px 'IBM Plex Mono';letter-spacing:.09em;color:#a8b596}.journey-stamps{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:25px}.journey-stamps>span{border:1px solid #a1b18a;color:#799260;padding:12px 18px;font:7px 'IBM Plex Mono';letter-spacing:.04em;transform:rotate(-2deg);border-radius:3px;animation:stamp-enter .4s ease-out}.journey-stamps>span:nth-child(even){transform:rotate(2deg);border-style:dashed}.entry{position:relative}.entry:before{content:'';position:absolute;left:0;top:0;width:6px;height:6px;background:#a8b990;border-radius:50%;transform:translateY(-50%)}.entry p{font-size:14px}.arrival #save-pass{display:block;margin-top:15px;background:#c8d6ae}.travel-intro-copy .contract{max-width:440px;background:#f2f3e6cc;margin-top:15px}.travel-intro-copy .contract code{font-size:11px}.motion-ready .reveal{opacity:0;transform:translateY(30px);transition:opacity 1s,transform 1s}.motion-ready .reveal.is-visible{opacity:1;transform:none}.motion-paused *{animation-play-state:paused!important}@keyframes ship-float{50%{transform:translateY(-9px)}}@keyframes flight-streak{from{transform:translateX(-250px);opacity:0}20%{opacity:.7}to{transform:translateX(1600px);opacity:0}}@keyframes landmark-pulse{50%{box-shadow:0 0 0 9px #c4e3aa05}}@keyframes note-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes stamp-enter{from{opacity:0;scale:1.15}to{opacity:1;scale:1}}@media(max-width:1000px){.travel-intro{min-height:720px}.travel-intro-copy h2{font-size:108px}.travel-intro-image{left:48%;right:-25%}.departure-stamp{left:280px;top:70px;width:120px;height:75px}.station-nav{padding:25px}.station-photo{min-height:430px}.station-nav>button{font-size:8px}.station-nav>p{font-size:10px}.window{min-height:620px}.arrival h2{font-size:100px}.boarding-tools{gap:10px}}@media(max-width:650px){.travel-intro{height:920px;min-height:920px}.travel-intro-copy{top:9%;left:6%;right:6%}.travel-intro-copy h2{font-size:110px;margin:28px 0}.travel-intro-copy>p{font-size:12px}.departure-stamp{left:230px;top:85px;width:105px;height:65px}.departure-stamp strong{font-size:21px}.departure-stamp>span{font-size:4px}.travel-intro-image{left:12%;right:-35%;top:57%;bottom:8%}.travel-intro-image>img{border-radius:50% 0 0 50%}.intro-image-label{font-size:4px;bottom:-18px}.intro-image-label.second{display:none}.travel-intro-bottom{font-size:5px}.boarding-tools{align-items:start;flex-direction:column;gap:12px}.seat-picker>button{font-size:5px;padding:8px}.seat-picker>span{font-size:5px}.window-frame{border-radius:70px 70px 8px 8px}.window{border-radius:55px 55px 4px 4px;min-height:640px}.window-hud{font-size:5px;top:25px;gap:20px}.window-hud>span{max-width:50%}.welcome{top:18%}.welcome h1{font-size:75px}.landmark{right:6%;top:18%;font-size:5px;padding:9px}.landmark-note{right:6%;left:6%;width:auto;top:27%}.arrival{top:24%}.arrival h2{font-size:78px}.arrival>p{font-size:13px}.station-atlas{padding:55px 6%}.station-atlas-heading{display:block}.station-atlas-heading h2{font-size:60px}.station-atlas-heading>p{max-width:100%;font-size:11px;margin-top:25px}.station-explorer{grid-template-columns:1fr}.station-photo{min-height:330px}.station-nav{padding:25px}.station-nav>button{font-size:10px}.station-nav>p{min-height:0;font-size:11px}.trip-state>strong{font-size:60px}.journey-stamps>span{font-size:6px;padding:10px}.window-label{font-size:5px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.motion-ready .reveal{opacity:1;transform:none}.travel-intro-image{transform:none!important}.flight-streaks{display:none}}
