@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500&family=Space+Grotesk:wght@400;500&display=swap');
:root{--gold:#c7ad78;--ice:#a4d1f3;--ink:#ecf0f4;--muted:#a6b1bc;background:#101820;color:var(--ink);font-family:'Space Grotesk',system-ui,sans-serif}
*{box-sizing:border-box}body{margin:0;min-height:100svh;display:flex;flex-direction:column;background:radial-gradient(ellipse at 78% 40%,#1b2b3c 0,transparent 52%),linear-gradient(145deg,#18232e,#0b1017)}
header{width:100%;max-width:1480px;margin:auto;padding:38px clamp(24px,5vw,88px);display:flex;justify-content:space-between;align-items:center;gap:24px}
.brand{display:flex;align-items:center;gap:15px;color:var(--gold)}.brand>svg{width:53px;height:48px}.brand>span{font:500 26px 'IBM Plex Mono',monospace;letter-spacing:-1px}.brand small{display:block;font:400 10px 'IBM Plex Mono',monospace;letter-spacing:3px;color:var(--muted);margin-top:5px}
.languages{display:flex;gap:5px}.languages button{background:none;border:0;color:var(--muted);font:400 14px 'IBM Plex Mono',monospace;padding:12px;cursor:pointer}.languages button[aria-pressed=true]{color:var(--gold)}
main{flex:1;width:100%;max-width:1480px;margin:auto;padding:30px clamp(24px,5vw,88px) 24px;min-height:0;display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:clamp(20px,5vw,90px)}
h1{font-size:clamp(24px,2vw,32px);font-weight:400;line-height:1.4;letter-spacing:-.03em;margin:18px 0 0;max-width:580px;min-height:90px;text-wrap:balance}#phase-text{display:block;color:var(--gold);opacity:1;transform:translateX(0);transition:opacity .38s ease,transform .38s ease}#phase-text.leaving{opacity:0;transform:translateX(8px)}.contact{width:100%;max-width:1480px;margin:0 auto;padding:24px clamp(24px,5vw,88px) 36px;font:400 14px/1.7 'IBM Plex Mono',monospace;color:var(--muted)}.contact a{color:var(--ice);text-decoration-thickness:1px;text-underline-offset:6px}
.sequence{display:flex;align-items:center;gap:18px}.sequence-dots{display:flex;position:relative;width:176px;height:44px}.sequence-dots button{width:44px;height:44px;flex:0 0 44px;border:0;padding:0;background:none;cursor:pointer}.sequence-dots button::after{content:'';display:block;width:6px;height:6px;border-radius:50%;background:var(--ice);opacity:.2;margin:auto}.travel-light{position:absolute;pointer-events:none;top:17px;left:17px;width:10px;height:10px;border-radius:50%;background:var(--gold);box-shadow:0 0 16px #c7ad7844;transform:translateX(calc(var(--step)*44px));transition:transform .7s cubic-bezier(.25,.6,.2,1)}.pause{background:none;border:0;color:var(--muted);padding:12px 6px;min-height:44px;font:400 12px 'IBM Plex Mono',monospace;cursor:pointer}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.planet{min-width:0;width:100%;max-width:650px;justify-self:center}.planet svg{width:100%;height:auto;display:block;overflow:visible}
@media(max-width:760px){header{padding-top:24px;padding-bottom:24px}main{grid-template-columns:1fr;gap:24px;min-height:0;padding-top:24px;padding-bottom:48px}h1{font-size:24px;max-width:650px;min-height:72px}.planet{max-width:500px}.contact{padding-top:8px;padding-bottom:28px}.brand small{font-size:9px}.brand>span{font-size:22px}.brand>svg{width:45px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}#phase-text,.travel-light{transition:none}}

:lang(zh-Hans) h1{font-family:"PingFang SC","Microsoft YaHei",system-ui,sans-serif;letter-spacing:0}
@media(max-width:480px){header{flex-wrap:wrap;gap:12px}.languages{margin-left:auto}.languages button{min-width:44px}}

/* Same star geometry and halo as the planet; a right-weighted decorative field. */
body{position:relative;isolation:isolate}
.star-field{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.star-field-defs{position:absolute}
.field-star{position:absolute;height:auto;transform:translate(-50%,-50%);overflow:visible}
.contact a{display:inline-block;transform:translateY(-38px)}
@media(max-width:760px){.star-field{opacity:.65}}
