*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
  :root{
    --space:#05060f; --ink:#ECEAFF; --dim:#9D99C9;
    --violet:#8B6CFF; --cyan:#4FD9F0; --hot:#FF5FA2;
    --line:rgba(255,255,255,0.1); --panel:rgba(255,255,255,0.04);
  }
  html{scroll-behavior:smooth;}
  body{font-family:'Noto Sans TC',sans-serif;background:var(--space);color:var(--ink);line-height:1.8;overflow-x:hidden;-webkit-font-smoothing:antialiased;}
  a{color:inherit;}
  ::selection{background:rgba(139,108,255,0.4);}

  /* ===== SKY ===== */
  .sky{position:fixed;inset:0;z-index:-3;background:#05060f;}
  .sky::before{content:'';position:absolute;inset:0;background:url(../images/cosmos-bg.jpg) center/cover no-repeat;opacity:.6;}
  .sky::after{content:'';position:absolute;inset:0;background:
    radial-gradient(130% 80% at 50% 122%, rgba(74,32,134,0.32) 0%, transparent 52%),
    radial-gradient(80% 55% at 86% 8%, rgba(28,58,128,0.22) 0%, transparent 55%),
    radial-gradient(70% 50% at 10% 12%, rgba(120,28,108,0.2) 0%, transparent 50%),
    linear-gradient(rgba(5,6,15,0.72),rgba(5,6,15,0.86));}

  /* ===== NAV ===== */
  nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:linear-gradient(rgba(5,6,15,0.6),transparent);}
  .nav-logo{display:flex;align-items:center;gap:0.55rem;text-decoration:none;color:#fff;font-family:'Space Grotesk',sans-serif;font-weight:700;letter-spacing:0.02em;}
  .nav-logo img{width:30px;height:30px;}
  .nav-logo .tld{color:var(--violet);}
  .nav-cta{font-family:'Space Grotesk',sans-serif;font-size:0.85rem;font-weight:600;letter-spacing:0.06em;text-decoration:none;color:#fff;border:1px solid rgba(255,255,255,0.25);padding:0.5rem 1.2rem;border-radius:999px;transition:.2s;}
  .nav-cta:hover{background:#fff;color:#0a0a1a;}

  /* ===== SHARED ===== */
  .wrap{position:relative;max-width:1100px;margin:0 auto;padding:0 1.5rem;}
  .eyebrow{font-family:'Space Grotesk',sans-serif;font-size:0.8rem;font-weight:600;letter-spacing:0.32em;text-transform:uppercase;color:var(--cyan);margin-bottom:1.4rem;}
  section{position:relative;}
  h2.big{font-family:'Space Grotesk','Noto Sans TC',sans-serif;font-size:clamp(2rem,5.5vw,3.6rem);font-weight:700;line-height:1.18;letter-spacing:-0.01em;text-wrap:balance;}
  .story .big{font-size:clamp(1.75rem,4.2vw,3rem);}
  .lead{font-size:clamp(1rem,2.2vw,1.2rem);color:var(--dim);max-width:640px;line-height:1.85;}
  .reveal{opacity:1;}
  .js .reveal{opacity:0;transform:translateY(26px);transition:opacity .9s ease,transform .9s ease;}
  .js .reveal.in{opacity:1;transform:none;}

  /* ===== HERO ===== */
  .hero{position:relative;min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:7rem 1.5rem 5rem;overflow:hidden;}
  .hero-bg{position:absolute;inset:0;z-index:0;background:url(../images/hero-rocket.jpg) center/cover no-repeat;animation:slowzoom 26s ease-in-out infinite alternate;}
  .hero-bg::after{content:'';position:absolute;inset:0;background:linear-gradient(rgba(4,5,14,0.5),rgba(4,5,14,0.2) 34%,rgba(5,6,15,0.55) 70%,rgba(5,6,15,0.96) 96%);}
  @keyframes slowzoom{from{transform:scale(1)}to{transform:scale(1.08)}}
  .hero-content{position:relative;z-index:2;}
  .comet{width:clamp(120px,20vw,190px);height:auto;filter:drop-shadow(0 0 40px rgba(139,108,255,0.55));animation:drift 7s ease-in-out infinite;margin-bottom:1.5rem;}
  @keyframes drift{0%,100%{transform:translateY(0) rotate(-4deg)}50%{transform:translateY(-16px) rotate(2deg)}}
  .hero .pre{font-size:0.98rem;color:var(--dim);letter-spacing:0.02em;margin-bottom:0.9rem;}
  .hero h1{font-family:'Space Grotesk','Noto Sans TC',sans-serif;font-size:clamp(2.4rem,7vw,4.6rem);font-weight:700;line-height:1.12;letter-spacing:-0.02em;max-width:18ch;margin:0 auto 1.5rem;}
  .hero h1 .grad{background:linear-gradient(100deg,var(--cyan),var(--violet) 55%,var(--hot));-webkit-background-clip:text;background-clip:text;color:transparent;}
  .hero-sub{font-size:clamp(1rem,2.2vw,1.2rem);color:var(--dim);max-width:600px;margin:0 auto 2.4rem;}
  .actions{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center;}
  .btn{font-family:'Space Grotesk',sans-serif;font-weight:600;letter-spacing:0.04em;text-decoration:none;border-radius:999px;padding:0.95rem 2rem;display:inline-flex;align-items:center;gap:0.5rem;transition:.2s;}
  .btn-primary{background:linear-gradient(100deg,var(--violet),var(--hot));color:#fff;box-shadow:0 0 34px rgba(139,108,255,0.5);}
  .btn-primary:hover{transform:translateY(-2px);box-shadow:0 0 46px rgba(255,95,162,0.6);}
  .btn-ghost{color:#fff;border:1px solid rgba(255,255,255,0.25);}
  .btn-ghost:hover{border-color:#fff;}
  .hero-note{margin-top:1.3rem;font-size:0.82rem;color:rgba(157,153,201,0.8);}
  .scrollcue{position:absolute;bottom:1.6rem;left:50%;transform:translateX(-50%);font-size:0.72rem;letter-spacing:0.3em;color:var(--dim);text-transform:uppercase;animation:bob 2s ease-in-out infinite;}
  @keyframes bob{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(6px)}}

  /* ===== STORY SECTIONS ===== */
  .story{padding:7rem 0;position:relative;overflow:hidden;}
  .sec-old::before,.sec-galaxy::before{content:'';position:absolute;inset:0;z-index:0;background-position:center;background-size:cover;background-repeat:no-repeat;}
  .sec-old::before{background-image:linear-gradient(90deg,rgba(7,9,18,0.93),rgba(7,9,18,0.72)),url(../images/cosmos-bg.jpg);filter:saturate(0.5) brightness(0.78);}
  .sec-galaxy::before{background-image:linear-gradient(90deg,rgba(5,6,15,0.93) 0%,rgba(5,6,15,0.52) 48%,rgba(5,6,15,0.2) 100%),url(../images/galaxy-bg.jpg);}
  @media(max-width:820px){.sec-old::before,.sec-galaxy::before{background-image:linear-gradient(rgba(5,6,15,0.78),rgba(5,6,15,0.9)),url(../images/galaxy-bg.jpg);}.sec-old::before{background-image:linear-gradient(rgba(7,9,18,0.86),rgba(7,9,18,0.92)),url(../images/cosmos-bg.jpg);}}
  .story .wrap{position:relative;z-index:1;}
  .story-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;}
  @media(max-width:820px){.story-grid{grid-template-columns:1fr;gap:2.5rem;}}
  .story p{color:var(--dim);font-size:1.05rem;margin-top:1.2rem;}
  .story p strong{color:#fff;font-weight:600;}

  /* old planet */
  .stage{position:relative;display:flex;justify-content:center;align-items:center;min-height:300px;}
  .planet-old{width:200px;height:200px;border-radius:50%;background:radial-gradient(circle at 36% 30%,#6b6b78,#26262e 68%);box-shadow:inset -16px -12px 40px rgba(0,0,0,0.7),0 0 60px rgba(120,120,140,0.18);position:relative;}
  .planet-old::after{content:'';position:absolute;inset:-26px;border-radius:50%;border:1px dashed rgba(200,160,160,0.35);}
  .planet-old .eye{position:absolute;top:30%;left:60%;width:14px;height:14px;border-radius:50%;background:#ff5b5b;box-shadow:0 0 22px 6px rgba(255,91,91,0.7);}
  .grid-cage{position:absolute;inset:0;border-radius:50%;background:
    repeating-linear-gradient(0deg,transparent 0 18px,rgba(255,255,255,0.06) 18px 19px),
    repeating-linear-gradient(90deg,transparent 0 18px,rgba(255,255,255,0.06) 18px 19px);
    -webkit-mask:radial-gradient(circle at 36% 30%,#000 64%,transparent 66%);mask:radial-gradient(circle at 36% 30%,#000 64%,transparent 66%);}

  /* galaxy network */
  .galaxy{position:relative;min-height:320px;}
  .galaxy svg{width:100%;height:auto;display:block;filter:drop-shadow(0 0 8px rgba(79,217,240,0.4));}
  .coords{display:flex;flex-wrap:wrap;gap:0.6rem;margin-top:1.8rem;}
  .coords span{font-family:'Space Grotesk',sans-serif;font-size:0.84rem;color:var(--ink);border:1px solid var(--line);background:var(--panel);border-radius:999px;padding:0.4rem 0.95rem;}
  .coords span b{color:var(--cyan);font-weight:600;}

  /* ===== PLANETS / DESTINATIONS ===== */
  .dest-sec{padding:7rem 0;text-align:center;}
  .dest-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2.2rem 1.5rem;margin-top:3.5rem;}
  @media(max-width:760px){.dest-grid{grid-template-columns:repeat(2,1fr);}}
  @media(max-width:440px){.dest-grid{grid-template-columns:1fr;}}
  .dest{text-decoration:none;color:inherit;display:flex;flex-direction:column;align-items:center;gap:0.5rem;transition:transform .25s;}
  .dest:hover{transform:translateY(-8px);}
  .planet{width:120px;height:120px;border-radius:50%;position:relative;background:
    radial-gradient(circle at 34% 28%,rgba(255,255,255,0.9),transparent 30%),
    radial-gradient(circle at 50% 50%,var(--c1),var(--c2) 72%);
    box-shadow:inset -10px -10px 28px rgba(0,0,0,0.55),0 0 0 0 rgba(0,0,0,0);
    margin-bottom:0.5rem;transition:box-shadow .25s;}
  .dest:hover .planet{box-shadow:inset -10px -10px 28px rgba(0,0,0,0.55),0 0 50px var(--glow);}
  .planet.rainbow{background:
    radial-gradient(circle at 34% 28%,rgba(255,255,255,0.95),transparent 32%),
    conic-gradient(from 200deg,#FF595E,#FF924C,#FFCA3A,#8AC926,#1982C4,#9D4EDD,#FF595E);}
  .dest:hover .planet.rainbow{box-shadow:inset -10px -10px 28px rgba(0,0,0,0.45),0 0 55px rgba(157,78,221,0.7);}
  .dest .nm{font-family:'Space Grotesk','Noto Sans TC',sans-serif;font-weight:700;font-size:1.1rem;color:#fff;}
  .dest .hk{font-size:0.86rem;color:var(--dim);max-width:20ch;line-height:1.6;text-wrap:balance;}
  .dest .go{font-family:'Space Grotesk',sans-serif;font-size:0.8rem;letter-spacing:0.08em;color:var(--cyan);margin-top:0.2rem;opacity:0;transition:opacity .2s;}
  .dest:hover .go{opacity:1;}

  /* ===== AFFIRMATION ===== */
  .affirm{padding:8rem 1.5rem;text-align:center;position:relative;overflow:hidden;}
  .aurora{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:140%;height:280px;background:linear-gradient(90deg,#FF595E,#FF924C,#FFCA3A,#8AC926,#1982C4,#9D4EDD);filter:blur(90px);opacity:0.28;border-radius:50%;pointer-events:none;}
  .affirm .inner{position:relative;max-width:780px;margin:0 auto;}
  .affirm h2{font-family:'Space Grotesk','Noto Sans TC',sans-serif;font-size:clamp(1.8rem,4.6vw,3rem);font-weight:700;line-height:1.4;}
  .affirm p{color:#D7D3FF;font-size:clamp(1rem,2.2vw,1.18rem);margin-top:1.5rem;line-height:2;}
  .affirm strong{color:#fff;}

  /* ===== CAPTAIN ===== */
  .cap{padding:6rem 0;}
  .cap-card{display:flex;align-items:center;gap:2.2rem;background:var(--panel);border:1px solid var(--line);border-radius:24px;padding:2.4rem;max-width:760px;margin:0 auto;backdrop-filter:blur(6px);}
  @media(max-width:600px){.cap-card{flex-direction:column;text-align:center;}}
  .cap-av{width:118px;height:118px;border-radius:50%;flex-shrink:0;overflow:hidden;box-shadow:0 0 0 4px rgba(139,108,255,0.3),0 0 40px rgba(139,108,255,0.4);}
  .cap-av img{width:100%;height:100%;object-fit:cover;}
  .cap h3{font-family:'Space Grotesk','Noto Sans TC',sans-serif;font-size:1.4rem;font-weight:700;}
  .cap .handle{font-family:'Space Grotesk',sans-serif;color:var(--cyan);font-size:0.88rem;margin:0.2rem 0 0.7rem;}
  .cap p{color:var(--dim);font-size:0.95rem;}
  .cap a.more{color:var(--violet);text-decoration:none;font-weight:600;}

  /* ===== MANUAL / GUIDES ===== */
  .manual{padding:6rem 0;text-align:center;}
  .man-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin-top:3rem;}
  @media(max-width:760px){.man-grid{grid-template-columns:1fr;}}
  .man{text-decoration:none;color:inherit;background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:1.8rem;text-align:left;transition:.2s;}
  .man:hover{border-color:var(--cyan);transform:translateY(-4px);box-shadow:0 0 40px rgba(79,217,240,0.15);}
  .man .n{font-family:'Space Grotesk',sans-serif;font-size:0.78rem;letter-spacing:0.14em;color:var(--cyan);}
  .man h3{font-family:'Space Grotesk','Noto Sans TC',sans-serif;font-size:1.18rem;font-weight:700;margin:0.5rem 0 0.4rem;}
  .man p{color:var(--dim);font-size:0.9rem;}

  /* ===== FINAL CTA ===== */
  .launch{padding:11rem 1.5rem;text-align:center;position:relative;overflow:hidden;}
  .launch::before{content:'';position:absolute;inset:0;z-index:0;background:radial-gradient(80% 80% at 50% 48%, rgba(6,7,16,0.6) 0%, rgba(6,7,16,0.9) 100%),url(../images/launch-bg.jpg) center/cover no-repeat;}
  .launch .glow{display:none;}
  .launch .inner{position:relative;z-index:2;}
  .launch h2{font-family:'Space Grotesk','Noto Sans TC',sans-serif;font-size:clamp(2rem,6vw,3.6rem);font-weight:700;line-height:1.2;margin-bottom:1.1rem;}
  .launch p{color:var(--dim);max-width:520px;margin:0 auto 2.2rem;}
  .launch .fine{margin-top:1.2rem;font-size:0.82rem;color:rgba(157,153,201,0.8);}