:root { --blue:#1769ed; --deep:#062d75; --ink:#fff; --grey:#dce6f5; }
* { box-sizing:border-box; }
html,body { margin:0; min-height:100%; }
body { font-family:"Manrope",sans-serif; color:var(--ink); background:#07162c; }
.background-video { position:fixed; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; z-index:-2; }
.video-shade { position:fixed; inset:0; z-index:-1; background:linear-gradient(90deg,rgba(3,17,42,.92) 0%,rgba(4,27,66,.72) 46%,rgba(4,24,55,.22) 100%),linear-gradient(0deg,rgba(2,14,35,.58),transparent 55%); }
.page-shell { min-height:100vh; max-width:1480px; margin:auto; padding:28px 6vw 24px; display:flex; flex-direction:column; overflow:hidden; position:relative; }
.site-header { display:flex; align-items:center; justify-content:space-between; z-index:2; }
.brand { width:190px; height:122px; object-fit:contain; filter:drop-shadow(0 8px 20px rgba(0,0,0,.28)); }
.status { display:inline-flex; align-items:center; gap:9px; font-size:.78rem; font-weight:700; color:#fff; letter-spacing:.08em; text-transform:uppercase; padding:10px 16px; border:1px solid rgba(255,255,255,.28); border-radius:99px; background:rgba(4,30,73,.42); backdrop-filter:blur(8px); }
.status i { width:8px; height:8px; border-radius:50%; background:#1bc587; box-shadow:0 0 0 5px rgba(27,197,135,.12); animation:pulse 2s infinite; }
.hero { flex:1; display:flex; align-items:center; min-height:600px; }
.hero-copy { position:relative; z-index:2; padding-bottom:30px; max-width:850px; }
.eyebrow { color:#83b5ff; text-transform:uppercase; letter-spacing:.25em; font-weight:800; font-size:.76rem; margin:0 0 25px; }
h1 { margin:0; font-size:clamp(3.6rem,6.7vw,7.4rem); line-height:.91; letter-spacing:-.066em; font-weight:800; }
h1 { text-shadow:0 8px 35px rgba(0,0,0,.28); }
h1 span { color:#60a0ff; }
.intro { max-width:590px; color:var(--grey); font-size:clamp(1.02rem,1.45vw,1.28rem); line-height:1.75; margin:34px 0 28px; text-shadow:0 2px 12px rgba(0,0,0,.45); }
.route { display:flex; align-items:center; width:min(370px,75vw); }
.route-point { width:12px; height:12px; border-radius:50%; border:3px solid #fff; background:transparent; flex:none; }
.route-point.active { background:#fff; box-shadow:0 0 0 7px rgba(255,255,255,.12); }
.route-line { height:2px; flex:1; background:rgba(255,255,255,.35); position:relative; overflow:hidden; }
.route-line i { position:absolute; inset:0; background:linear-gradient(90deg,var(--blue) 40%,transparent 40%); animation:travel 3s ease-in-out infinite; transform-origin:left; }
.soon { text-transform:uppercase; letter-spacing:.28em; font-weight:800; color:#fff; font-size:.72rem; margin:18px 0 0; }
footer { display:flex; justify-content:space-between; color:rgba(255,255,255,.62); font-size:.72rem; letter-spacing:.12em; text-transform:uppercase; z-index:2; }
@keyframes pulse { 50% { box-shadow:0 0 0 9px rgba(27,197,135,0); } }
@keyframes travel { 0%,100% { transform:scaleX(.12); opacity:.5; } 50% { transform:scaleX(1); opacity:1; } }
@media (max-width:850px) {
  .page-shell { padding:24px; }
  .brand { width:155px; height:100px; }
  .hero { padding-top:60px; }
  h1 { font-size:clamp(3.3rem,15vw,5.4rem); }
  footer { margin-top:50px; }
  .video-shade { background:linear-gradient(90deg,rgba(3,17,42,.9),rgba(4,27,66,.52)),linear-gradient(0deg,rgba(2,14,35,.72),transparent 55%); }
}
@media (max-width:520px) {
  .status { font-size:0; padding:11px; }
  .status i { width:9px; height:9px; }
  .hero { padding-top:65px; }
  h1 { letter-spacing:-.06em; }
  .intro { margin-top:26px; }
  footer { gap:20px; line-height:1.5; }
}
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { animation:none!important; } }
