@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&family=Playfair+Display:ital,wght@0,500;0,600;1,500;1,600&display=swap');
:root{--navy:#050507;--ink:#eff4f0;--paper:#e8ede6;--lime:#149cff;--mint:#39c7ff;--mono:'DM Mono',monospace;--sans:Manrope,Arial,sans-serif;--serif:'Playfair Display',Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--navy);color:var(--ink);font-family:var(--sans)}a{color:inherit}.skip{position:fixed;z-index:9;left:16px;top:-50px;background:var(--lime);color:var(--navy);padding:11px;font-weight:800}.skip:focus{top:16px}header{position:absolute;z-index:2;inset:0 0 auto;display:flex;height:86px;align-items:center;justify-content:space-between;padding:0 clamp(22px,5vw,82px);border-bottom:1px solid #ffffff22}.brand{width:72px;height:72px;display:flex;align-items:center;justify-content:center}.brand img{display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:contain;filter:none}nav{display:flex;gap:32px}nav a,.header-cta{font-size:12px;font-weight:700;text-decoration:none}.header-cta{border-bottom:1px solid var(--lime);padding-bottom:5px}.header-cta b{color:var(--lime);font-size:16px}.hero{min-height:min(780px,100svh);position:relative;overflow:hidden;display:grid;align-items:center;padding:160px clamp(22px,10vw,160px) 110px;background:radial-gradient(circle at 76% 22%,#0a3154 0,#0a315444 25%,transparent 50%),var(--navy)}.grid,.routes{position:absolute;inset:0}.grid{background-image:linear-gradient(#ffffff10 1px,transparent 1px),linear-gradient(90deg,#ffffff10 1px,transparent 1px);background-size:58px 58px;mask-image:linear-gradient(90deg,transparent,black 45%)}.routes svg{width:100%;height:100%}.routes path{fill:none;stroke-linecap:round;stroke-dasharray:7 12}.r1{stroke:var(--lime);stroke-width:2;animation:dash 22s linear infinite}.r2{stroke:var(--mint);stroke-width:1.5;animation:dash 26s linear infinite reverse}.routes circle{fill:url(#sphere-blue);filter:url(#sphere-glow);stroke:#bfe8ff;stroke-width:.7}.routes circle.secondary{fill:url(#sphere-cyan);filter:url(#sphere-glow);stroke:#d2f7ff}.hero-copy{position:relative;z-index:1;max-width:720px}.eyebrow{font:500 11px var(--mono);letter-spacing:.14em;color:var(--lime);margin:0 0 24px}.eyebrow i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--lime);margin-right:9px;box-shadow:0 0 0 0 #149cff88;animation:pulse 2s infinite}h1,h2{margin:0;font-weight:600;letter-spacing:-.06em;line-height:.92}h1{font-size:clamp(3.5rem,8.2vw,8.2rem)}em{font-family:var(--serif);font-weight:500}.hero-copy>p:not(.eyebrow),.tracking>div>p:not(.eyebrow){max-width:490px;color:#c0d0d3;line-height:1.7;font-size:18px;margin:31px 0}.actions{display:flex;gap:26px;align-items:center;flex-wrap:wrap}.button{display:inline-flex;min-height:50px;align-items:center;justify-content:center;gap:20px;padding:0 23px;background:var(--lime);color:var(--navy);text-decoration:none;font-size:13px;font-weight:800;transition:transform .2s}.button:hover{transform:translateY(-3px)}.text-link{font-size:13px;font-weight:700;text-decoration:none;border-bottom:1px solid #ffffff77;padding-bottom:5px}.text-link b{color:var(--lime);margin-left:6px}.movement{position:absolute;right:clamp(22px,7vw,118px);bottom:78px;z-index:1;width:min(335px,32vw);padding:21px;background:#070b12cc;border:1px solid #ffffff24;backdrop-filter:blur(12px)}.movement>div:first-child{display:flex;justify-content:space-between;font:500 10px var(--mono);letter-spacing:.09em;color:#b9c9ca}.movement strong{color:var(--lime);font-weight:500}.line{height:2px;background:#48616c;margin:29px 4px 20px}.line i{display:block;background:var(--lime);height:5px;width:36%;transform:translateY(-1px);box-shadow:0 0 12px var(--lime);animation:progress 4s ease-in-out infinite}.movement footer{display:flex;justify-content:space-between;font-size:11px;color:#bac8cb}.movement footer span:last-child{text-align:right}.movement footer b{display:block;font:500 9px var(--mono);color:var(--lime);margin-bottom:5px}.services,.tracking,.contact{padding:clamp(76px,12vw,150px) clamp(22px,10vw,160px)}.services{background:var(--paper);color:#13283b}.intro{display:grid;grid-template-columns:minmax(130px,.55fr) 2fr;gap:24px;margin-bottom:66px}.intro .eyebrow{color:#41604f;padding-top:13px}.intro h2,.tracking h2,.contact h2{font-size:clamp(2.8rem,5.5vw,6rem)}.cards{border-top:1px solid #bac7bc}.cards article{display:grid;grid-template-columns:120px 1fr auto;gap:25px;align-items:center;padding:31px 12px;border-bottom:1px solid #bac7bc;transition:.3s}.cards article:hover,.cards article:focus{outline:0;background:#dbe9da;padding-left:25px;padding-right:25px}.cards article>span{font:500 12px var(--mono);color:#587266}.cards h3{font-size:clamp(1.35rem,2.4vw,2.15rem);margin:0;letter-spacing:-.04em}.cards p{color:#53706b;line-height:1.55;margin:8px 0 0}.cards article>b{font-size:27px;color:#305b4b}.tracking{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(42px,10vw,140px);background:#0c2b3c}.panel{align-self:center;padding:30px;background:#f0f3ed;color:#14283b}label{display:block;font:500 10px var(--mono);letter-spacing:.1em;text-transform:uppercase;margin-bottom:11px}.input{display:flex;border-bottom:1px solid #7c8e8e}.input input{width:100%;min-width:0;border:0;background:none;padding:13px 0;font:600 18px var(--sans);outline:0}.input button{border:0;background:none;font:800 13px var(--sans);color:#173c32;cursor:pointer}.panel small{display:block;color:#647677;margin-top:12px}.panel small button{border:0;border-bottom:1px solid currentColor;background:none;color:#285b4b;font:600 12px var(--mono);cursor:pointer}#result{margin-top:30px;padding-top:24px;border-top:1px solid #c8d0c9}#result h3{display:flex;gap:13px;align-items:center;margin:0;font-size:16px}#result h3>i{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#bce58d;color:#244526;font-style:normal}#result h3 span{font:500 10px var(--mono);color:#5f716c}#result h3 b,#result li b{display:block;color:#14283b;font:700 14px var(--sans);margin-top:3px}ol{list-style:none;padding:5px 0 0}li{position:relative;display:flex;gap:15px;padding:22px 0 0;color:#6a7e7b;font-size:12px}li>i{position:relative;z-index:1;width:15px;height:15px;border:1px solid #849792;border-radius:50%;background:#f0f3ed}li:not(:last-child):after{content:'';position:absolute;left:7px;top:40px;height:20px;width:1px;background:#b6c5bd}.done>i{background:#4e9877;border-color:#4e9877}.active>i{background:var(--lime);border-color:#5a8850;box-shadow:0 0 0 5px #149cff55}.error{color:#9b4024;font-size:13px}.contact{position:relative;overflow:hidden;text-align:center;background:var(--lime);color:#102a36}.contact>*:not(.orbit){position:relative;z-index:1}.contact .eyebrow{color:#315d4d}.contact h2{max-width:940px;margin:auto}.contact>p:not(.eyebrow){font-size:18px;color:#365d57;margin:31px 0}.dark{background:#102d3b;color:#fff;padding:0 28px}.orbit{position:absolute;width:min(58vw,750px);aspect-ratio:1;border:1px solid #102a363d;border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%)}.orbit:before,.orbit:after{content:'';position:absolute;border:1px solid #102a362d;border-radius:50%;inset:13%}.orbit:after{inset:29%}.bottom{display:flex;justify-content:space-between;padding:22px clamp(22px,5vw,82px);color:#9eafb3;font:10px var(--mono);letter-spacing:.08em}@keyframes dash{to{stroke-dashoffset:-380}}@keyframes pulse{70%{box-shadow:0 0 0 8px #149cff00}}@keyframes pulseNode{50%{opacity:.5;transform:scale(.72)}}@keyframes progress{50%{width:76%}}@media(max-width:800px){nav{display:none}.hero{min-height:730px;padding-top:145px;align-items:start}.movement{width:calc(100% - 44px);right:22px;bottom:45px}.intro,.tracking{grid-template-columns:1fr}.intro{margin-bottom:45px}.intro .eyebrow{padding:0}.cards article{grid-template-columns:54px 1fr auto}.tracking{gap:42px}}@media(max-width:480px){header{height:73px;padding:0 18px}.brand{width:125px}.header-cta{font-size:12px}.header-cta b{display:none}.hero{padding:123px 22px 74px;min-height:700px}h1{font-size:clamp(3.25rem,15vw,4.5rem)}.movement{bottom:24px}.services,.tracking,.contact{padding:76px 22px}.cards article{padding:24px 2px;gap:12px}.cards article:hover,.cards article:focus{padding-left:9px;padding-right:9px}.panel{padding:22px}.bottom{font-size:9px;gap:12px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}
.hero-logo{position:absolute;z-index:0;top:12%;right:clamp(50px,8vw,130px);width:clamp(280px,34vw,510px);height:68%;display:grid;place-items:center;pointer-events:none}.hero-logo:before{content:'';position:absolute;width:72%;aspect-ratio:1;border-radius:50%;background:#149cff;filter:blur(90px);opacity:.16}.hero-logo img{position:relative;display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 0 28px #149cff44)}
@media(max-width:800px){.hero-logo{top:74px;right:-25px;width:230px;height:300px;opacity:.34}.hero-logo:before{filter:blur(55px);opacity:.2}}
@media(max-width:480px){.hero-logo{top:68px;right:-48px;width:210px;height:280px;opacity:.3}}
/* Keep the movement status visually anchored to the logo. */
.movement{right:calc(clamp(50px,8vw,130px) + (clamp(280px,34vw,510px) - min(335px,32vw))/2);bottom:54px}
@media(max-width:800px){.hero-logo{right:50%;transform:translateX(50%)}.movement{left:50%;right:auto;transform:translateX(-50%);bottom:35px}}
@media(max-width:480px){.hero-logo{right:50%;transform:translateX(50%)}.movement{left:50%;right:auto;transform:translateX(-50%);bottom:24px}}
/* Hide the large hero logo on phones; retain the compact header logo. */
@media(max-width:600px){.hero{min-height:700px}.hero-logo{display:none}.hero-copy{margin-top:0}}
@media(prefers-reduced-motion:reduce){.route-traveler{display:none}}