/* Helios launch homepage: hype layer on top of styles.css. */
:root{--gold-hot:#ffcf6b;--cyan-hot:#8cf0ff;--card:#0a121b}
body.home{background:radial-gradient(circle at 80% -4%,#0a3a52 0 9%,transparent 38%),radial-gradient(circle at 6% 42%,#1a1236 0 6%,transparent 34%),var(--void);overflow-x:hidden}
#stars{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;opacity:.8}
main,.footer{position:relative;z-index:1}
main{overflow-x:clip}
em{font-style:normal}

/* Hero */
.hero2{display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:20px;min-height:700px;padding:28px 0 36px}
.status-chip{display:inline-flex;align-items:center;gap:9px;margin:0 0 24px;padding:9px 14px;border:1px solid #2c5365;border-radius:99px;background:#0a1c27cc;font:800 10px/1 "DM Mono",monospace;letter-spacing:1.6px;color:var(--cyan-hot)}
.status-chip i{width:8px;height:8px;border-radius:50%;background:#3dffa6;box-shadow:0 0 12px #3dffa6;animation:blink 1.8s ease-in-out infinite}
.hero2 h1{font-size:clamp(58px,8.4vw,112px);letter-spacing:-5px;line-height:.9;margin:0;font-weight:800}
.hero2 h1 em{background:linear-gradient(95deg,var(--gold-hot),#ff9d3a 45%,var(--cyan-hot));-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 28px #f5b83e44)}
.hero2 .lede{font-size:18px;max-width:560px}
.button-glow{box-shadow:0 0 0 1px #8cf0ff55,0 10px 40px #57ddfb44;background:linear-gradient(100deg,#57ddfb,#8cf0ff);position:relative;overflow:hidden}
.button-glow::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,#fff9 50%,transparent 70%);transform:translateX(-120%);animation:sweep 4.2s ease-in-out infinite}
.hero-stats{list-style:none;display:flex;gap:30px;flex-wrap:wrap;margin:38px 0 0;padding:0}
.hero-stats li{display:grid;gap:4px}
.hero-stats b{font-size:30px;letter-spacing:-1.5px;color:var(--gold-hot)}
.hero-stats span{font:700 10px "DM Mono",monospace;letter-spacing:1px;color:#7d95a6;text-transform:uppercase}

.hero2-stage{position:relative;height:640px;display:grid;place-items:center}
.core-glow{position:absolute;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,#1d93c155 0,#0b3a5a33 40%,transparent 68%);animation:breathe 6s ease-in-out infinite}
.core-emblem{position:absolute;width:150px;height:150px;border-radius:50%;left:-3%;top:12%;filter:drop-shadow(0 0 30px #46d5ff88);animation:float 7s ease-in-out infinite}
.ring{position:absolute;border-radius:50%;border:1px solid #57ddfb66;animation:spin 24s linear infinite}
.ring b{position:absolute;top:-6px;left:50%;width:12px;height:12px;margin-left:-6px;border-radius:50%;background:var(--gold-hot);box-shadow:0 0 16px var(--gold-hot)}
.ring-1{width:480px;height:480px}
.ring-2{width:380px;height:380px;border-color:#f5b83e66;animation-duration:17s;animation-direction:reverse}
.ring-2 b{background:var(--cyan-hot);box-shadow:0 0 16px var(--cyan-hot)}
.ring-3{width:580px;height:580px;border-color:#57ddfb33;animation-duration:36s}
.ring-3 b{width:9px;height:9px;background:#fff;box-shadow:0 0 12px #fff}

/* Phone frames */
.phone{margin:0;width:260px;aspect-ratio:260/563;border-radius:38px;padding:8px;background:linear-gradient(160deg,#3b5365,#10202c 40%,#243645);box-shadow:0 30px 80px #000c,0 0 0 1px #5f7f93aa,0 0 60px #1ba9d533;position:relative}
.phone img{width:100%;height:100%;display:block;border-radius:31px;object-fit:cover;background:#050a10}
.hero-phone{position:relative;z-index:3;animation:float 8s ease-in-out infinite reverse;width:250px}

/* Ticker */
.ticker{position:relative;z-index:1;overflow:hidden;border-top:1px solid #1d3646;border-bottom:1px solid #1d3646;background:#08121bcc;padding:15px 0}
.ticker-track{display:flex;gap:40px;width:max-content;animation:marquee 38s linear infinite}
.ticker span{font:800 11px "DM Mono",monospace;letter-spacing:2.4px;color:#8fb2c4;white-space:nowrap}
.ticker span:first-child,.ticker span:nth-child(8){color:var(--gold-hot)}

/* Loop */
.steps-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-top:44px}
.steps-grid article{position:relative;padding:26px 22px 28px;border:1px solid #27465a;border-radius:22px;background:linear-gradient(170deg,#0e1c28,#08111a);overflow:hidden;min-height:260px;transition:transform .25s var(--ease),border-color .25s var(--ease)}
.steps-grid article:hover{transform:translateY(-5px);border-color:var(--cyan)}
.steps-grid article::after{content:"";position:absolute;right:-40px;top:-40px;width:130px;height:130px;border-radius:50%;background:radial-gradient(circle,#57ddfb22,transparent 70%)}
.step-num{display:block;font:900 44px "DM Mono",monospace;letter-spacing:-2px;color:#17303f;-webkit-text-stroke:1px #4b7e95}
.steps-grid h3{margin:34px 0 10px;font-size:22px;letter-spacing:-.6px}
.steps-grid p{margin:0;font-size:13.5px;line-height:1.6;color:#9db2c1}

/* Showcase */
.showcase{display:grid;grid-template-columns:.85fr 1.15fr;gap:40px;align-items:center}
.showcase .member-orbit-note{grid-column:1/-1;text-align:center}
.tick-list{list-style:none;padding:0;margin:28px 0 0;display:grid;gap:13px}
.tick-list li{position:relative;padding-left:30px;font-size:14px;line-height:1.5;color:#c4d4df}
.tick-list li::before{content:"";position:absolute;left:0;top:3px;width:16px;height:16px;border-radius:50%;background:#57ddfb22;border:1px solid var(--cyan)}
.tick-list li::after{content:"";position:absolute;left:5px;top:8px;width:6px;height:6px;border-radius:50%;background:var(--cyan);box-shadow:0 0 8px var(--cyan)}
.phone-row{display:flex;justify-content:center;align-items:center;padding:20px 0}
.phone-row .phone{width:210px;flex:none}
.phone-row .p1{transform:rotate(-7deg) translateX(34px);z-index:1}
.phone-row .p2{transform:translateY(-22px) scale(1.1);z-index:3}
.phone-row .p3{transform:rotate(7deg) translateX(-34px);z-index:1}

/* Founders */
.founders{position:relative}
.founders::before{content:"";position:absolute;inset:40px 0 auto;height:520px;background:radial-gradient(ellipse at 50% 0,#f5b83e1f,transparent 62%);pointer-events:none}
.gold-eyebrow{color:var(--gold-hot)}
.founders h2 em{color:var(--gold-hot)}
.wave-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:44px}
.wave{position:relative;padding:32px;border-radius:26px;border:1px solid #6a5424;background:linear-gradient(160deg,#1c1709,#0b0a07);overflow:hidden}
.wave::before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 30%,#f5b83e12 50%,transparent 70%);transform:translateX(-100%);animation:sweep 7s ease-in-out infinite}
.wave-2{border-color:#2d5a70;background:linear-gradient(160deg,#0b1a24,#070d12)}
.wave-tag{font:900 10px "DM Mono",monospace;letter-spacing:1.6px;color:var(--gold-hot)}
.wave-2 .wave-tag{color:var(--cyan-hot)}
.wave h3{font-size:40px;letter-spacing:-1.8px;margin:26px 0 8px}
.wave-price{font-size:17px!important;font-weight:800;color:#ffe3a2!important;margin:0 0 12px!important}
.wave-2 .wave-price{color:#b5f3ff!important}
.wave p{font-size:14px;line-height:1.6;color:#b7a987;margin:0 0 20px}
.wave-2 p{color:#93adbd}
.wave-foot{display:inline-block;padding:8px 12px;border:1px dashed #6f6240;border-radius:10px;font:800 9.5px "DM Mono",monospace;letter-spacing:1px;color:#c9b682}
.wave-2 .wave-foot{border-color:#3b6075;color:#8ab6c9}
.perk-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:18px}
.perk-grid article{padding:22px;border:1px solid #28404f;border-radius:20px;background:var(--card);transition:transform .25s var(--ease),border-color .25s var(--ease)}
.perk-grid article:hover{transform:translateY(-4px);border-color:var(--gold)}
.perk-grid i{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:#2a2210;color:var(--gold-hot);font-size:20px;font-style:normal;border:1px solid #6a5424}
.perk-grid h3{margin:22px 0 8px;font-size:17px}
.perk-grid p{margin:0;font-size:13px;line-height:1.6;color:#92a7b6}
.path-note{margin:26px 0 0;padding:18px 22px;border-left:3px solid var(--cyan);background:#0a1a24;border-radius:0 14px 14px 0;font-size:14px;line-height:1.6;color:#b3c6d3}
.path-note b{color:#fff}

/* Command center */
.command-head{display:flex;align-items:end;justify-content:space-between;gap:28px}
.command-head .button{flex:none;margin-bottom:6px}
.command-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:38px}
.command-grid a{display:flex;flex-direction:column;min-height:230px;padding:22px;border:1px solid #294858;border-radius:20px;background:linear-gradient(160deg,#0d1a25,#091119);color:var(--ink);text-decoration:none;transition:transform .2s var(--ease),border-color .2s var(--ease)}
.command-grid a:hover{transform:translateY(-4px);border-color:var(--cyan)}
.command-grid small{font:900 9px "DM Mono",monospace;letter-spacing:1.1px;color:var(--cyan)}
.command-grid h3{margin:34px 0 10px;font-size:22px;line-height:1.05}
.command-grid p{margin:0;color:#98adbb;font-size:13px;line-height:1.6}
.command-grid span{margin-top:auto;padding-top:20px;font:900 10px "DM Mono",monospace;letter-spacing:1px;color:var(--gold)}

/* Trajectory */
.trajectory{list-style:none;margin:42px 0 0;padding:0;position:relative}
.trajectory::before{content:"";position:absolute;left:25px;top:20px;bottom:20px;width:2px;background:linear-gradient(#3dffa6,#57ddfb 28%,#1d3646 60%,#1d3646)}
.trajectory li{position:relative;display:grid;grid-template-columns:52px 1fr auto;gap:18px;align-items:start;padding:18px 0}
.trajectory li>b{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#0b1620;border:2px solid #264153;font:900 13px "DM Mono",monospace;color:#6d8799;position:relative;z-index:1}
.trajectory h3{margin:4px 0 6px;font-size:21px;letter-spacing:-.5px}
.trajectory p{margin:0;max-width:640px;font-size:13.5px;line-height:1.6;color:#92a7b6}
.trajectory em{font:900 10px "DM Mono",monospace;letter-spacing:1.5px;color:#6d8799;padding:7px 11px;border:1px solid #264153;border-radius:99px;margin-top:6px}
.trajectory li.done>b{border-color:#3dffa6;color:#3dffa6;background:#0a2018}
.trajectory li.done em{color:#3dffa6;border-color:#1f6b4b}
.trajectory li.now>b{border-color:var(--cyan);color:var(--cyan);background:#0a2430;box-shadow:0 0 0 0 #57ddfb88;animation:pulse 2s ease-out infinite}
.trajectory li.now em{color:var(--cyan);border-color:var(--cyan)}
.trajectory li.now h3{color:var(--cyan-hot)}

/* Final CTA */
.final{position:relative;text-align:center;padding:120px 0 130px;display:grid;justify-items:center}
.final::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 38%,#12607f44,transparent 62%);pointer-events:none}
.final-emblem{position:relative;width:150px;height:150px;border-radius:50%;margin-bottom:26px;filter:drop-shadow(0 0 40px #46d5ffaa);animation:float 7s ease-in-out infinite}
.final h2{margin:0 auto;font-size:clamp(40px,6vw,76px);letter-spacing:-3.4px;max-width:900px;position:relative}
.final .section-copy{margin:22px auto 0;position:relative}
.actions.center{justify-content:center;margin-top:34px;position:relative}

/* Reveal on scroll */
.js .reveal{opacity:0;transform:translateY(26px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.js .reveal.in{opacity:1;transform:none}
.js .reveal.settled{transition:transform .25s var(--ease),border-color .25s var(--ease)}
.js .phone-row .p1.reveal.in{transform:rotate(-7deg) translateX(34px)}
.js .phone-row .p2.reveal.in{transform:translateY(-22px) scale(1.1)}
.js .phone-row .p3.reveal.in{transform:rotate(7deg) translateX(-34px)}
.js .phone-row .p1.reveal,.js .phone-row .p2.reveal,.js .phone-row .p3.reveal{transform:translateY(40px)}
.steps-grid .reveal:nth-child(2),.perk-grid .reveal:nth-child(2),.command-grid .reveal:nth-child(2){transition-delay:.08s}
.steps-grid .reveal:nth-child(3),.perk-grid .reveal:nth-child(3),.command-grid .reveal:nth-child(3){transition-delay:.16s}
.steps-grid .reveal:nth-child(4),.perk-grid .reveal:nth-child(4),.command-grid .reveal:nth-child(4){transition-delay:.24s}

@keyframes spin{to{transform:rotate(360deg)}}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
@keyframes breathe{0%,100%{transform:scale(1);opacity:.85}50%{transform:scale(1.08);opacity:1}}
@keyframes marquee{to{transform:translateX(-50%)}}
@keyframes sweep{0%,55%{transform:translateX(-120%)}100%{transform:translateX(120%)}}
@keyframes blink{50%{opacity:.35}}
@keyframes pulse{0%{box-shadow:0 0 0 0 #57ddfb99}100%{box-shadow:0 0 0 18px #57ddfb00}}

@media(max-width:980px){
  .hero2{grid-template-columns:1fr;min-height:0;padding-top:34px}
  .hero2-stage{height:560px;margin-top:6px;overflow:hidden}
  .ring-1{width:min(380px,92vw);height:min(380px,92vw)}.ring-2{width:min(300px,72vw);height:min(300px,72vw)}.ring-3{width:min(450px,100vw);height:min(450px,100vw)}.core-glow{width:min(420px,100vw);height:min(420px,100vw)}
  .core-emblem{width:96px;height:96px;left:2%;top:3%}
  .nav-links{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.nav-links a{white-space:nowrap}
  .hero-phone{width:220px}
  .steps-grid,.perk-grid,.command-grid{grid-template-columns:repeat(2,1fr)}
  .showcase{grid-template-columns:minmax(0,1fr)}
  .showcase>*{min-width:0}
  .command-head{flex-direction:column;align-items:flex-start}
}
@media(max-width:640px){
  .hero2 h1{letter-spacing:-3.4px}
  .hero2-stage{height:500px}
  .hero-stats{display:grid;grid-template-columns:repeat(3,auto);justify-content:start;gap:18px}.hero-stats b{font-size:24px}.hero-stats span{font-size:8.5px;letter-spacing:.6px}
  .steps-grid,.perk-grid,.command-grid,.wave-grid{grid-template-columns:1fr}
  .steps-grid article{min-height:0}
  .phone-row{overflow:hidden;padding:30px 0 14px}
  .phone-row .phone{width:124px;border-radius:22px;padding:5px;margin:0 -6px}
  .phone-row .phone img{border-radius:18px}
  .phone-row .p1{transform:rotate(-6deg) translateX(12px)}.phone-row .p3{transform:rotate(6deg) translateX(-12px)}
  .js .phone-row .p1.reveal.in{transform:rotate(-6deg) translateX(12px)}.js .phone-row .p3.reveal.in{transform:rotate(6deg) translateX(-12px)}
  .wave h3{font-size:34px}
  .trajectory li{grid-template-columns:44px 1fr;gap:14px}
  .trajectory li>b{width:44px;height:44px}
  .trajectory::before{left:21px}
  .trajectory em{grid-column:2;justify-self:start;margin-top:0}
  .final{padding:80px 0 90px}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
  .js .reveal{opacity:1;transform:none}
  .ticker-track{width:auto;flex-wrap:wrap}
}
