.page-home{
  --home-hair:rgba(30,58,51,.66);
  --home-panel:rgba(11,26,22,.82);
}

/* ---------- 首屏框景 ---------- */
.page-home .hero-frame{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  border:1px solid var(--line);
  border-radius:6px;
  background-color:var(--ink-900);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)' opacity='.06'/%3E%3C/svg%3E");
  padding:clamp(26px,5vw,54px) clamp(18px,4vw,46px) clamp(28px,5vw,48px);
  margin-bottom:clamp(36px,6vw,70px);
  box-shadow:var(--shadow-panel);
}

.page-home .hero-frame::before,
.page-home .hero-frame::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  height:14px;
  z-index:4;
  pointer-events:none;
  background-image:repeating-linear-gradient(90deg,var(--line-2) 0 1px,transparent 1px 22px);
}
.page-home .hero-frame::before{top:0;}
.page-home .hero-frame::after{bottom:0;}

.page-home .hero-media{position:absolute;inset:0;z-index:0;overflow:hidden;}
.page-home .hero-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:.3;
  filter:grayscale(.42) contrast(1.08);
}
.page-home .hero-media::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    repeating-linear-gradient(180deg,rgba(255,255,255,.028) 0 1px,transparent 1px 3px),
    radial-gradient(130% 100% at 8% 0%,rgba(53,255,208,.13),transparent 60%),
    linear-gradient(180deg,rgba(6,17,14,.64),rgba(6,17,14,.9) 56%,var(--ink-900));
}

.page-home .hero-inner{
  position:relative;
  z-index:3;
  display:grid;
  gap:clamp(26px,4vw,44px);
}

.page-home .hero-copy .eyebrow{
  color:var(--cyan);
  letter-spacing:.14em;
}

.page-home .hero-copy h1{
  margin:.4em 0 0;
  font-family:var(--font-display);
  font-weight:900;
  font-size:clamp(27px,5.2vw,50px);
  line-height:1.14;
  letter-spacing:-.02em;
  color:var(--paper);
}

.page-home .hero-copy .lead{
  margin:1em 0 0;
  max-width:36em;
  font-size:clamp(15px,1.6vw,17px);
  line-height:1.85;
  color:var(--paper);
  opacity:.84;
}

.page-home .hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:clamp(20px,3vw,30px);
}

.page-home .hero-index{
  border:1px solid var(--line);
  border-top:2px solid var(--cyan);
  border-radius:4px;
  background:var(--home-panel);
  padding:16px 16px 14px;
}

.page-home .hero-index-head{
  margin:0;
  font-family:var(--font-mono);
  font-size:11px;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--muted);
}

.page-home .index-map{
  list-style:none;
  margin:12px 0 0;
  padding:0;
  display:grid;
  gap:9px;
}

.page-home .index-map li{
  display:flex;
  align-items:baseline;
  gap:10px;
  font-size:14px;
  color:var(--paper);
  padding-bottom:9px;
  border-bottom:1px dashed var(--line-2);
}
.page-home .index-map li:last-child{border-bottom:0;padding-bottom:0;}

.page-home .index-map .mono{
  font-size:11px;
  letter-spacing:.1em;
  color:var(--cyan);
  flex:none;
}

.page-home .index-figure{
  display:block;
  width:100%;
  height:auto;
  margin-top:14px;
  color:var(--muted);
}

.page-home .hero-index-note{
  margin:10px 0 0;
  font-size:12px;
  line-height:1.7;
  color:var(--muted);
  letter-spacing:.02em;
}

/* ---------- 章节通用 ---------- */
.page-home .section{
  margin-bottom:clamp(40px,6.5vw,78px);
}

.page-home .section-head{
  max-width:46rem;
  margin-bottom:clamp(18px,3vw,30px);
}

.page-home .section-head .eyebrow{color:var(--cyan);letter-spacing:.14em;}

.page-home .section-head h2{
  margin:.4em 0 0;
  font-family:var(--font-display);
  font-weight:900;
  font-size:clamp(21px,3.2vw,32px);
  line-height:1.24;
  letter-spacing:-.015em;
  color:var(--paper);
}

.page-home .section-sub{
  margin:.75em 0 0;
  font-size:15px;
  line-height:1.8;
  color:var(--muted);
}

/* ---------- 四条线索状态板 ---------- */
.page-home .status-board{align-items:start;}

.page-home .status-card{
  display:flex;
  flex-direction:column;
  gap:12px;
  padding:18px 18px 16px;
  border-left:2px solid var(--line);
  background:var(--home-panel);
  transition:border-color .24s var(--ease),transform .24s var(--ease);
}
.page-home .status-card:hover{
  border-left-color:var(--cyan);
  transform:translateY(-2px);
}

.page-home .status-card .panel-title{
  font-size:16px;
  letter-spacing:.01em;
}

.page-home .status-text{
  margin:0;
  font-size:14.5px;
  line-height:1.8;
  color:var(--paper);
  opacity:.86;
}

.page-home .status-meta{
  margin:2px 0 0;
  padding-top:12px;
  border-top:1px solid var(--line-2);
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px 16px;
}
.page-home .status-meta--wide{grid-template-columns:repeat(2,minmax(0,1fr));}

.page-home .status-meta > div{
  display:flex;
  flex-direction:column;
  gap:3px;
  min-width:0;
}

.page-home .status-meta dt{
  font-size:11px;
  letter-spacing:.09em;
  color:var(--muted);
}

.page-home .status-meta dd{
  margin:0;
  font-size:13.5px;
  color:var(--paper);
  overflow-wrap:anywhere;
}

.page-home .status-link{
  margin-top:auto;
  align-self:flex-start;
  font-size:13.5px;
}

.page-home .status-figure{
  margin:0;
  align-self:stretch;
}

/* ---------- 第二栏说明 ---------- */
.page-home .column-grid{
  display:grid;
  gap:clamp(20px,3vw,34px);
  padding:clamp(20px,3.4vw,34px);
  border:1px solid var(--line);
  border-radius:6px;
  background:linear-gradient(180deg,var(--ink-850),var(--ink-900));
}

.page-home .column-copy .eyebrow{color:var(--cyan);letter-spacing:.14em;}

.page-home .column-copy h2{
  margin:.4em 0 0;
  font-family:var(--font-display);
  font-weight:900;
  font-size:clamp(19px,2.8vw,28px);
  line-height:1.28;
  letter-spacing:-.012em;
  color:var(--paper);
}

.page-home .column-copy p{
  margin:.95em 0 0;
  font-size:15px;
  line-height:1.85;
  color:var(--paper);
  opacity:.82;
}

.page-home .column-links{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:20px;
}

.page-home .fact-rail{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1px;
  background:var(--line);
  border:1px solid var(--line);
  border-radius:4px;
  overflow:hidden;
}

.page-home .fact{
  display:flex;
  flex-direction:column;
  gap:4px;
  padding:16px 14px;
  background:var(--ink-900);
}

.page-home .fact .stat-value{
  font-size:26px;
  line-height:1.1;
}

.page-home .fact .stat-label{
  font-size:12px;
  letter-spacing:.06em;
}

/* ---------- 两分钟回看 ---------- */
.page-home .replay-grid{
  display:grid;
  gap:clamp(20px,3vw,32px);
}

.page-home .replay-steps{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:1px;
  background:var(--line-2);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}

.page-home .replay-step{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:4px 14px;
  padding:18px 4px;
  background:var(--ink-900);
}

.page-home .step-num{
  grid-row:span 2;
  font-size:13px;
  letter-spacing:.08em;
  color:var(--cyan);
  padding-top:2px;
}

.page-home .step-title{
  margin:0;
  font-size:16px;
  font-weight:700;
  color:var(--paper);
  letter-spacing:.01em;
}

.page-home .replay-step p{
  margin:4px 0 0;
  font-size:14px;
  line-height:1.8;
  color:var(--muted);
}

.page-home .replay-figure{margin:0;}

.page-home .replay-note{
  margin:18px 0 0;
  font-size:13.5px;
  line-height:1.8;
  color:var(--muted);
  border-left:2px solid var(--amber);
  padding-left:14px;
}
.page-home .replay-note .mono{
  color:var(--amber);
  font-size:15px;
}

/* ---------- 版本台账 ---------- */
.page-home .figure--banner{aspect-ratio:5 / 2;}

.page-home .ledger-figure{
  margin:0 0 clamp(18px,3vw,28px);
}

.page-home .ledger{
  list-style:none;
  margin:0;
  padding:0;
  border-top:1px solid var(--line);
}

.page-home .ledger-row{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:6px 14px;
  padding:15px 2px;
  border-bottom:1px solid var(--line-2);
  align-items:start;
}

.page-home .ledger-id{
  font-size:11px;
  letter-spacing:.1em;
  color:var(--cyan);
  padding-top:3px;
  white-space:nowrap;
}

.page-home .ledger-body{min-width:0;}

.page-home .ledger-title{
  margin:0;
  font-size:15.5px;
  font-weight:700;
  line-height:1.5;
  color:var(--paper);
}

.page-home .ledger-desc{
  margin:5px 0 0;
  font-size:13.5px;
  line-height:1.75;
  color:var(--muted);
}

.page-home .ledger-row .tag{
  grid-column:2;
  justify-self:start;
}

.page-home .ledger-foot{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:16px;
  margin-top:20px;
}

/* ---------- 服务范围与联系 ---------- */
.page-home .service-grid{
  display:grid;
  gap:clamp(18px,3vw,28px);
}

.page-home .service-card{
  display:flex;
  flex-direction:column;
  gap:12px;
  padding:20px 18px 18px;
}

.page-home .service-card .panel-title{
  font-size:17px;
  line-height:1.4;
  letter-spacing:.01em;
}

.page-home .service-card p{
  margin:0;
  font-size:14.5px;
  line-height:1.85;
  color:var(--paper);
  opacity:.84;
}

.page-home .service-card--contact{
  background:linear-gradient(180deg,rgba(11,26,22,.94),rgba(6,17,14,.94));
  border-color:var(--line);
}

.page-home .service-card .contact-list{
  margin:2px 0 0;
}

.page-home .service-links{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:auto;
  padding-top:14px;
}

/* ---------- 响应式 ---------- */
@media (min-width:760px){
  .page-home .status-meta--wide{grid-template-columns:repeat(3,minmax(0,1fr));}
  .page-home .ledger-row{
    grid-template-columns:78px minmax(0,1fr) auto;
    align-items:center;
    gap:6px 20px;
    padding:16px 2px;
  }
  .page-home .ledger-row .tag{
    grid-column:auto;
    justify-self:end;
  }
  .page-home .replay-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:start;}
}

@media (min-width:900px){
  .page-home .hero-inner{
    grid-template-columns:minmax(0,1.4fr) minmax(0,.9fr);
    align-items:end;
  }
  .page-home .column-grid{
    grid-template-columns:minmax(0,1.5fr) minmax(0,.9fr);
    align-items:start;
  }
  .page-home .service-grid{
    grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);
    align-items:stretch;
  }
}

@media (prefers-reduced-motion:reduce){
  .page-home .status-card{transition:none;}
  .page-home .status-card:hover{transform:none;}
}
