/* Homepage: two separate visual sections, with no overlapping panels. */
.home-hero {
  position: relative;
  min-height: 760px;
  min-height: min(860px, max(760px, 100svh));
  display: flex;
  align-items: center;
  padding: calc(var(--nav-h) + 70px) 0 90px;
  isolation: isolate;
  overflow: hidden;
  background: #080d15;
  color: #eef3f8;
}
.home-hero__photo { position:absolute; inset:var(--nav-h) 0 0 34%; z-index:-2; }
.home-hero__photo img {
  position:absolute; top:0; right:0; width:auto; max-width:none; height:100%; object-fit:contain; object-position:right top;
  mask-image:linear-gradient(90deg,transparent,#000 24%);
  filter:none; opacity:1;
}
.home-hero::after {
  content:""; position:absolute; inset:0; z-index:-1; pointer-events:none;
  background:linear-gradient(90deg,#080d15 15%,#080d15e0 34%,transparent 61%);
}
.home-hero__content { position:relative; }
.home-hero__eyebrow { color:#afc6d8; font-size:.69rem; letter-spacing:.18em; margin-bottom:30px; }
.home-hero__eyebrow::before {content:"";display:inline-block;width:28px;height:2px;background:#e12c3d;vertical-align:middle;margin-right:14px;}
.home-hero__kicker {font-size:1rem;color:#dae5ed;letter-spacing:.14em;margin-bottom:18px;}
.home-hero h1 {font-size:clamp(3rem,5vw,4.7rem);line-height:1.23;font-weight:700;letter-spacing:-.035em;}
.home-hero h1 em {font-style:normal;color:#bdd9ee;}
.home-hero__lead {max-width:480px;font-size:1rem;line-height:2;color:#b9c9d5;margin-top:28px;}
.home-hero__actions {display:flex;flex-wrap:wrap;gap:14px;margin-top:34px;}
.home-hero__actions .btn {min-width:166px;justify-content:center;}
.home-hero__caption {position:absolute;right:32px;bottom:24px;color:#d0dce5;font-size:.65rem;letter-spacing:.03em;text-align:right;background:#080d158c;padding:8px 12px;border-radius:3px;}
.home-hero__caption a{text-decoration:underline;text-underline-offset:3px;}
.home-demo {background:#f2f5f7;color:#162b3d;padding:82px 0 92px;}
.home-demo__layout {display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;gap:clamp(36px,5vw,76px);}
.home-demo__copy {min-width:0;}
.home-demo__label {font-size:.66rem;letter-spacing:.19em;color:#6d8292;margin-bottom:12px;}
.home-demo h2 {font-size:clamp(1.9rem,2.5vw,2.65rem);font-weight:600;line-height:1.4;letter-spacing:-.025em;}
.home-demo__eyebrow {font-size:.83rem;color:#567184;margin:22px 0 12px;}
.home-demo__intro {font-size:.95rem;line-height:1.95;color:#627584;margin-top:22px;max-width:440px;}
.home-demo__steps {list-style:none;padding:0;margin:28px 0 0;}
.home-demo__steps li {display:flex;gap:18px;padding:17px 0;border-top:1px solid #dce3e8;}
.home-demo__steps li > span {font-size:.71rem;color:#be3445;line-height:1.65;padding-top:2px;}
.home-demo__steps h3 {font-size:.97rem;font-weight:600;line-height:1.55;margin:0 0 5px;}
.home-demo__steps p {font-size:.81rem;line-height:1.8;color:#6b7c88;margin:0;}
.home-demo__footnote {font-size:.69rem;line-height:1.8;color:#81909b;margin-top:14px;}
.home-demo__console {width:100%;min-width:0;margin:0;background:#0a1433;border:1px solid #20304d;border-radius:10px;box-shadow:0 18px 42px #132c4412;overflow:hidden;color:#c8d5e4;}
.home-demo__toolbar {display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 30px;border-bottom:1px solid #ffffff13;font-size:.76rem;}
.home-demo__title {display:flex;align-items:center;gap:10px;}
.home-demo__status {width:6px;height:6px;border-radius:50%;background:#df5260;}
.home-demo__toolbar .mono {color:#9eb2ca;font-size:.7rem;letter-spacing:.1em;}
.home-demo__toolbar b {font-weight:500;color:#edf3fc;margin-left:6px;}
.home-demo__stage {padding:22px;display:flex;justify-content:center;position:relative;background:radial-gradient(ellipse at center,#1d2b4d44,transparent 70%);}
.home-demo__stage canvas {width:min(100%,440px);height:auto;aspect-ratio:1;position:relative;}
.home-demo__controls {display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 30px;border-top:1px solid #ffffff13;font-size:.74rem;color:#9fb2c8;}
.home-demo__controls b {font-weight:500;color:#d7e2ef;margin-left:8px;}
.home-demo__controls button {border:1px solid #ffffff35;border-radius:4px;padding:9px 22px;font:inherit;color:#e4ecf6;background:#ffffff06;cursor:pointer;min-width:108px;transition:background .2s;}
.home-demo__controls button:hover {background:#ffffff12;}
@media(min-width:1700px){.home-hero__photo{left:34%}.home-hero__photo img{object-position:right top}}
@media(max-width:1080px){
  .home-hero{min-height:740px;padding-top:calc(var(--nav-h) + 60px);padding-bottom:80px;}
  .home-hero h1{font-size:3.7rem;}
  .home-hero__photo{left:35%;}
  .home-hero__lead{max-width:440px;font-size:.93rem;}
  .home-demo__layout{gap:32px;}
  .home-demo h2{font-size:1.9rem;}
}
@media(max-width:800px){
  .home-demo__layout{grid-template-columns:1fr;gap:36px;}
  .home-demo__copy{max-width:600px;}
  .home-demo__intro{max-width:none;}
}
@media(max-width:640px){
  .home-hero{min-height:700px;min-height:max(680px,92svh);padding:calc(var(--nav-h) + 60px) 0 90px;align-items:center;}
  .home-hero__photo{left:0;}
  .home-hero__photo img{width:100%;height:100%;object-fit:cover;object-position:58% top;opacity:1;mask-image:linear-gradient(90deg,transparent,#000 22%);}
  .home-hero::after{background:linear-gradient(90deg,#080d15e8 5%,#080d15b8 45%,#080d1520 80%);}
  .home-hero__eyebrow{font-size:.51rem;letter-spacing:.09em;margin-bottom:27px;}
  .home-hero__eyebrow::before{width:17px;margin-right:8px;}
  .home-hero__kicker{font-size:.82rem;margin-bottom:17px;}
  .home-hero h1{font-size:clamp(2.65rem,10vw,3.7rem);line-height:1.28;}
  .home-hero__lead{font-size:.87rem;line-height:2;margin-top:25px;max-width:320px;}
  .home-hero__actions{gap:11px;margin-top:28px;}
  .home-hero__actions .btn{font-size:.8rem;min-width:0;padding:0 20px;height:3.15rem;}
  .home-hero__caption{right:22px;bottom:25px;font-size:.58rem;}
  .home-demo{padding:48px 0 56px;}
  .home-demo__layout{gap:32px;}
  .home-demo__label{font-size:.59rem;margin-bottom:10px;}
  .home-demo h2{font-size:1.65rem;}
  .home-demo__intro{font-size:.87rem;margin-top:18px;}
  .home-demo__eyebrow{margin-top:17px;}
  .home-demo__steps{margin-top:22px;}
  .home-demo__console{border-radius:7px;}
  .home-demo__toolbar{padding:15px 17px;font-size:.66rem;gap:8px;}
  .home-demo__toolbar .mono{font-size:.59rem;letter-spacing:.04em;}
  .home-demo__stage{padding:14px 10px;}
  .home-demo__controls{padding:14px 17px;font-size:.67rem;}
  .home-demo__controls button{padding:8px 14px;min-width:88px;}
}


/* Homepage reading hierarchy: 18–20px body copy, 22–24px step titles. */
.home-hero__lead {font-size:var(--copy-size);color:#d4e0e9;max-width:540px;line-height:1.9;}
.home-hero__eyebrow {font-size:.8125rem;letter-spacing:.12em;}
.home-hero__kicker {font-size:1.125rem;}
.home-hero__caption {font-size:.8125rem;line-height:1.65;color:#eef3f8;}
.home-demo__label {font-size:.875rem;letter-spacing:.14em;color:#4a657b;}
.home-demo__eyebrow {font-size:1.125rem;color:#445f74;}
.home-demo__intro {font-size:var(--copy-size);line-height:1.9;color:#3d5263;max-width:none;}
.home-demo__steps {margin-top:30px;}
.home-demo__steps li {padding:21px 0;gap:20px;}
.home-demo__steps li > span {font-size:1.25rem;font-weight:600;color:#a22235;padding-top:2px;}
.home-demo__steps h3 {font-size:clamp(1.375rem,1.1rem + .3vw,1.5rem);font-weight:600;line-height:1.5;margin-bottom:9px;letter-spacing:0;}
.home-demo__steps p {font-size:var(--copy-size);line-height:1.85;color:#43596a;}
.home-demo__footnote {font-size:.9375rem;line-height:1.8;color:#536779;margin-top:20px;}
.home-demo__toolbar,.home-demo__controls {font-size:.9375rem;color:#c0cede;}
.home-demo__toolbar .mono {font-size:.875rem;color:#c0cede;letter-spacing:.06em;}
.home-demo__controls button {font-size:1rem;padding:10px 20px;min-height:44px;}
@media(max-width:1080px) and (min-width:801px) {
  .home-demo__layout {grid-template-columns:1fr 1fr;gap:30px;}
}
@media(max-width:640px) {
  .home-hero__eyebrow {font-size:.75rem;letter-spacing:.035em;max-width:320px;}
  .home-hero__kicker {font-size:1rem;}
  .home-hero__lead {font-size:1.0625rem;max-width:340px;}
  .home-hero__actions .btn {font-size:1rem;}
  .home-hero__caption {font-size:.75rem;}
  .home-demo__eyebrow {font-size:1rem;}
  .home-demo__steps h3 {font-size:1.25rem;}
  .home-demo__steps li {gap:15px;padding:20px 0;}
  .home-demo__steps li > span {font-size:.9375rem;padding-top:4px;}
  .home-demo__footnote {font-size:.875rem;}
  .home-demo__toolbar,.home-demo__controls {font-size:.875rem;}
  .home-demo__toolbar .mono {font-size:.8125rem;}
  .home-demo__controls button {font-size:.9375rem;}
}

.home-demo__visual {min-width:0;}



/* Near view: the rocket occupies most of the photo height, with its nose clear. */
.home-hero__photo img {
  top:-8%;right:0;width:auto;height:155%;object-fit:contain;
  mask-image:linear-gradient(90deg,transparent,#000 24%,#000 94%,transparent);
}
@media(min-width:1700px) {
  .home-hero__photo img {right:0;mask-image:linear-gradient(90deg,transparent,#000 24%);}   /* 大屏照片铺到右边缘 */
}
@media(max-width:1080px) {
  .home-hero__photo img {right:-160px;}
}
@media(max-width:640px) {
  .home-hero__photo img {right:-190px;height:142%;top:-6%;width:auto;object-fit:contain;}
}
