.page-home{
  --home-sect:clamp(46px,7vw,88px);
  --home-gap:clamp(12px,2vw,20px);
  background:var(--cream);
  color:var(--ink);
  font-family:var(--font-body);
  overflow-x:clip;
}
.page-home .mono{font-family:var(--font-mono);font-weight:600;letter-spacing:.02em;}

/* ---------- Hero ---------- */
.page-home .home-hero{
  position:relative;
  padding-block:clamp(28px,5vw,52px) 0;
  background:linear-gradient(165deg,var(--cream) 0%,var(--cream) 42%,var(--cloud) 100%);
  border-bottom:1px solid var(--mist);
  overflow:hidden;
}
.page-home .home-hero::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background-image:repeating-linear-gradient(115deg,rgba(216,209,194,.5) 0 1px,transparent 1px 52px);
  opacity:.45;
}
.page-home .hero-grid{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:1fr;
  gap:clamp(20px,4vw,40px);
  align-items:center;
  padding-bottom:clamp(24px,4vw,40px);
}
.page-home .hero-title{
  margin:0 0 16px;
  font-family:var(--font-head);
  font-weight:800;
  font-size:clamp(2.3rem,9.4vw,5.2rem);
  line-height:1.04;
  letter-spacing:.04em;
  color:var(--indigo);
}
.page-home .hero-mark{
  position:relative;
  color:var(--indigo-deep);
  background:linear-gradient(transparent 62%,rgba(199,161,90,.42) 62%);
  padding-inline:2px;
}
.page-home .hero-lede{
  max-width:34em;
  color:var(--ink);
  font-size:clamp(.95rem,1.6vw,1.06rem);
}
.page-home .hero-paths{
  display:grid;
  gap:10px;
  margin:24px 0 20px;
  grid-template-columns:1fr;
}
.page-home .path-card{
  display:grid;
  grid-template-columns:auto 1fr;
  grid-template-areas:"num name" "num sub";
  gap:2px 12px;
  padding:12px 14px;
  text-decoration:none;
  color:var(--ink);
  background:rgba(255,255,255,.55);
  border:1px solid var(--mist);
  border-left:3px solid var(--gold);
  border-radius:var(--radius);
  box-shadow:var(--shadow-1);
  transition:border-color .2s var(--ease),box-shadow .2s var(--ease),background .2s var(--ease);
}
.page-home .path-card:nth-child(2){border-left-color:var(--turquoise);}
.page-home .path-card:nth-child(3){border-left-color:var(--vermilion);}
.page-home .path-card:hover,
.page-home .path-card:focus-visible{
  background:#fff;
  border-color:var(--rock);
  box-shadow:var(--shadow-2);
}
.page-home .path-num{
  grid-area:num;
  align-self:center;
  color:var(--rock);
  font-size:.78rem;
}
.page-home .path-name{
  grid-area:name;
  font-family:var(--font-head);
  font-weight:800;
  font-size:1rem;
  letter-spacing:.02em;
}
.page-home .path-sub{
  grid-area:sub;
  color:var(--rock);
  font-size:.8rem;
  line-height:1.5;
}
.page-home .hero-meta{
  margin:0;
  color:var(--rock);
  font-size:.78rem;
}
.page-home .hero-visual{
  position:relative;
  border:1px solid var(--mist);
  border-radius:var(--radius);
  background:var(--indigo);
  box-shadow:var(--shadow-2);
  overflow:hidden;
  aspect-ratio:16/11;
}
.page-home .hero-visual img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.page-home .hero-route{
  position:absolute;
  inset:auto 0 0 auto;
  width:46%;
  height:auto;
  z-index:2;
  opacity:.95;
}
.page-home .route-gold{fill:none;stroke:var(--gold);stroke-width:1.6;stroke-dasharray:7 6;}
.page-home .route-green{fill:none;stroke:var(--turquoise);stroke-width:1.4;stroke-opacity:.85;}
.page-home .route-dot-gold{fill:var(--gold);}
.page-home .route-dot-red{fill:var(--vermilion);}
.page-home .route-dot-green{fill:var(--turquoise);}

/* ---------- Anchor strip ---------- */
.page-home .anchor-strip{
  position:relative;
  z-index:2;
  background:var(--indigo);
  border-top:1px solid var(--indigo-deep);
}
.page-home .strip-inner{
  display:flex;
  gap:8px;
  overflow-x:auto;
  padding-block:10px;
  scrollbar-width:thin;
}
.page-home .strip-inner a{
  flex:0 0 auto;
  display:inline-flex;
  align-items:baseline;
  gap:7px;
  padding:6px 12px;
  color:var(--cloud);
  font-size:.82rem;
  text-decoration:none;
  border:1px solid rgba(247,243,232,.22);
  border-radius:var(--radius);
  white-space:nowrap;
  transition:border-color .2s var(--ease),color .2s var(--ease);
}
.page-home .strip-inner a .mono{color:var(--gold-light);font-size:.72rem;}
.page-home .strip-inner a:hover,
.page-home .strip-inner a:focus-visible{
  border-color:var(--gold);
  color:#fff;
}

/* ---------- Section shell ---------- */
.page-home .home-sect{
  padding-block:var(--home-sect);
  border-bottom:1px solid var(--mist);
}
.page-home .home-sect--tint{background:var(--cloud);}
.page-home .sect-head{max-width:46em;margin-bottom:clamp(20px,3vw,32px);}
.page-home .sect-head h2{
  margin:6px 0 12px;
  font-family:var(--font-head);
  font-weight:800;
  font-size:clamp(1.45rem,3.8vw,2.35rem);
  line-height:1.18;
  letter-spacing:.03em;
  color:var(--indigo);
}
.page-home .sect-head .lede{color:var(--rock);font-size:.96rem;}
.page-home .sect-foot{margin:24px 0 0;}

/* ---------- Bento ---------- */
.page-home .entry-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:var(--home-gap);
}
.page-home .bento{
  display:flex;
  flex-direction:column;
  gap:10px;
  padding:18px;
  min-height:150px;
  border-radius:var(--radius);
  transition:box-shadow .2s var(--ease),border-color .2s var(--ease);
}
.page-home .bento:hover{box-shadow:var(--shadow-2);border-color:var(--rock);}
.page-home .bento .panel-head{display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
.page-home .bento .panel-title{
  margin:0;
  font-family:var(--font-head);
  font-weight:800;
  font-size:1.06rem;
  letter-spacing:.02em;
  line-height:1.35;
}
.page-home .bento .panel-body{flex:1;}
.page-home .bento .panel-body p{margin:0 0 8px;font-size:.9rem;line-height:1.75;}
.page-home .bento-link{margin-top:auto;font-size:.85rem;}
.page-home .panel--indigo .panel-title,
.page-home .panel--indigo .panel-body p{color:var(--cloud);}
.page-home .panel--indigo .panel-body p{color:rgba(247,243,232,.82);}
.page-home .panel--indigo .link-arrow{color:var(--gold-light);}
.page-home .bento-figure{
  color:var(--gold-light);
  font-size:.84rem;
  border-top:1px solid rgba(247,243,232,.22);
  padding-top:8px;
}
.page-home .bento-a{background:linear-gradient(155deg,var(--indigo) 0%,var(--indigo-soft) 100%);}
.page-home .bento-b{border-left:3px solid var(--gold);}
.page-home .bento-c{border-left:3px solid var(--turquoise);}
.page-home .bento-d{border-left:3px solid var(--rock);}
.page-home .bento-e{border-left:3px solid var(--vermilion);}

/* ---------- Versions ---------- */
.page-home .version-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:var(--home-gap);
  margin-bottom:clamp(18px,3vw,28px);
}
.page-home .version-card{
  padding:20px;
  border-radius:var(--radius);
  border-top:3px solid var(--gold);
  background:#fff;
}
.page-home .version-card--lite{border-top-color:var(--turquoise);}
.page-home .version-name{
  margin:10px 0 14px;
  font-family:var(--font-head);
  font-weight:800;
  font-size:1.22rem;
  letter-spacing:.02em;
  color:var(--indigo);
}
.page-home .version-figure{
  display:flex;
  align-items:baseline;
  gap:8px;
  margin:0 0 6px;
  font-size:1.5rem;
  color:var(--indigo-deep);
}
.page-home .version-figure span{
  font-family:var(--font-body);
  font-weight:400;
  font-size:.78rem;
  color:var(--rock);
  letter-spacing:.01em;
}
.page-home .version-list{
  margin:14px 0 0;
  padding:0 0 0 16px;
  border-top:1px solid var(--mist);
  list-style:none;
}
.page-home .version-list li{
  position:relative;
  padding:8px 0 0;
  font-size:.88rem;
  line-height:1.65;
  color:var(--ink);
}
.page-home .version-list li::before{
  content:"";
  position:absolute;
  left:-14px;
  top:16px;
  width:5px;
  height:5px;
  border-radius:50%;
  background:var(--rock);
}
.page-home .matrix{
  border:1px solid var(--mist);
  border-radius:var(--radius);
  background:#fff;
  box-shadow:var(--shadow-1);
  overflow:hidden;
}
.page-home .matrix-row{
  display:grid;
  grid-template-columns:1fr;
  gap:4px;
  padding:12px 16px;
  border-bottom:1px solid var(--mist);
  font-size:.88rem;
  line-height:1.6;
}
.page-home .matrix-row:last-child{border-bottom:0;}
.page-home .matrix-row:nth-child(odd){background:rgba(233,218,187,.18);}
.page-home .matrix-head{display:none;}
.page-home .matrix-key{
  font-family:var(--font-head);
  font-weight:800;
  font-size:.82rem;
  letter-spacing:.06em;
  color:var(--indigo);
}
.page-home .matrix-row .v-std::before,
.page-home .matrix-row .v-lite::before{
  color:var(--rock);
  font-size:.76rem;
}
.page-home .matrix-row .v-std::before{content:"标准安装版 · ";}
.page-home .matrix-row .v-lite::before{content:"轻量便携版 · ";}

/* ---------- V4 ---------- */
.page-home .v4-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:clamp(18px,3vw,32px);
}
.page-home .v4-visual{
  margin:0;
  border:1px solid var(--mist);
  border-radius:var(--radius);
  overflow:hidden;
  background:var(--sand);
  box-shadow:var(--shadow-1);
}
.page-home .v4-visual img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:2/1;
  object-fit:cover;
}
.page-home .v4-visual figcaption{
  padding:10px 14px;
  font-size:.76rem;
  color:var(--rock);
  background:var(--cloud);
  border-top:1px solid var(--mist);
}
.page-home .timeline{
  list-style:none;
  margin:0;
  padding:4px 0 0 22px;
  border-left:1px solid var(--mist);
}
.page-home .timeline li{position:relative;padding-bottom:20px;}
.page-home .timeline li:last-child{padding-bottom:0;}
.page-home .timeline li::before{
  content:"";
  position:absolute;
  left:-27px;
  top:6px;
  width:9px;
  height:9px;
  border-radius:50%;
  background:var(--gold);
  box-shadow:0 0 0 3px var(--cream);
}
.page-home .timeline li:first-child::before{background:var(--vermilion);}
.page-home .timeline li:last-child::before{background:var(--turquoise);}
.page-home .timeline-title{
  margin:0 0 6px;
  font-family:var(--font-head);
  font-weight:800;
  font-size:1rem;
  letter-spacing:.03em;
  color:var(--indigo);
}
.page-home .timeline p{margin:0;font-size:.9rem;line-height:1.75;color:var(--ink);}
.page-home .v4-links{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:clamp(20px,3vw,30px);
}

/* ---------- Feedback ---------- */
.page-home .home-sect--dark{
  background:linear-gradient(160deg,var(--indigo-deep) 0%,var(--indigo) 100%);
  color:var(--cloud);
  border-bottom-color:var(--indigo-deep);
}
.page-home .feedback-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:clamp(20px,4vw,36px);
  align-items:start;
}
.page-home .eyebrow--light{color:var(--gold-light);}
.page-home .feedback-copy h2{
  margin:6px 0 14px;
  font-family:var(--font-head);
  font-weight:800;
  font-size:clamp(1.4rem,3.6vw,2.2rem);
  line-height:1.2;
  letter-spacing:.03em;
  color:var(--cloud);
}
.page-home .feedback-copy p{
  margin:0 0 12px;
  font-size:.92rem;
  line-height:1.8;
  color:rgba(247,243,232,.84);
}
.page-home .feedback-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:20px 0 22px;
}
.page-home .contact-mini{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
  margin:0;
  padding-top:16px;
  border-top:1px solid rgba(247,243,232,.2);
}
.page-home .contact-mini div{display:flex;flex-direction:column;gap:2px;}
.page-home .contact-mini dt{
  font-size:.74rem;
  letter-spacing:.12em;
  color:var(--gold-light);
}
.page-home .contact-mini dd{
  margin:0;
  font-size:.9rem;
  color:var(--cloud);
  word-break:break-all;
}
.page-home .feedback-visual{
  margin:0;
  border:1px solid rgba(247,243,232,.22);
  border-radius:var(--radius);
  overflow:hidden;
  background:var(--indigo-soft);
}
.page-home .feedback-visual img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:4/3;
  object-fit:cover;
}

/* ---------- Index board ---------- */
.page-home .index-board{
  display:grid;
  grid-template-columns:1fr;
  gap:var(--home-gap);
}
.page-home .index-cell{
  display:grid;
  grid-template-columns:auto 1fr;
  grid-template-areas:"num name" "num desc";
  gap:2px 12px;
  padding:14px 16px;
  text-decoration:none;
  color:var(--ink);
  background:#fff;
  border:1px solid var(--mist);
  border-radius:var(--radius);
  transition:border-color .2s var(--ease),box-shadow .2s var(--ease),transform .2s var(--ease);
}
.page-home .index-cell:hover,
.page-home .index-cell:focus-visible{
  border-color:var(--gold);
  box-shadow:var(--shadow-2);
}
.page-home .index-num{
  grid-area:num;
  align-self:center;
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  font-size:.8rem;
  color:var(--indigo);
  background:var(--sand);
  border-radius:50%;
}
.page-home .index-name{
  grid-area:name;
  font-family:var(--font-head);
  font-weight:800;
  font-size:.96rem;
  letter-spacing:.02em;
}
.page-home .index-desc{
  grid-area:desc;
  font-size:.8rem;
  line-height:1.55;
  color:var(--rock);
}

/* ---------- Drawer ---------- */
.page-home .drawer{
  position:fixed;
  inset:0 0 0 auto;
  z-index:80;
  width:min(420px,100%);
  padding:22px;
  overflow-y:auto;
  background:var(--cloud);
  border-left:1px solid var(--mist);
  box-shadow:var(--shadow-2);
  transform:translateX(102%);
  visibility:hidden;
  transition:transform .24s var(--ease),visibility .24s var(--ease);
}
.page-home .drawer:target{transform:none;visibility:visible;}
.page-home .drawer-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  padding-bottom:12px;
  border-bottom:1px solid var(--mist);
}
.page-home .drawer-head h2{
  margin:0;
  font-family:var(--font-head);
  font-weight:800;
  font-size:1.12rem;
  letter-spacing:.03em;
  color:var(--indigo);
}
.page-home .drawer-close{
  flex:0 0 auto;
  padding:4px 10px;
  font-size:.78rem;
  text-decoration:none;
  color:var(--indigo);
  border:1px solid var(--rock);
  border-radius:var(--radius);
  transition:background .2s var(--ease),color .2s var(--ease);
}
.page-home .drawer-close:hover,
.page-home .drawer-close:focus-visible{background:var(--indigo);color:var(--cloud);}
.page-home .drawer-list{
  margin:16px 0;
  padding-left:20px;
  font-size:.86rem;
  line-height:1.75;
  color:var(--ink);
}
.page-home .drawer-list li{margin-bottom:8px;}
.page-home .drawer-note{
  margin:0 0 16px;
  padding:12px;
  font-size:.84rem;
  line-height:1.75;
  color:var(--ink);
  background:var(--sand);
  border-left:3px solid var(--vermilion);
  border-radius:var(--radius);
  word-break:break-word;
}
.page-home .drawer-states{
  list-style:none;
  margin:0 0 18px;
  padding:0;
  font-size:.84rem;
  color:var(--ink);
}
.page-home .drawer-states li{
  display:flex;
  align-items:center;
  gap:8px;
  padding:7px 0;
  border-bottom:1px dashed var(--mist);
}
.page-home .dot{
  width:8px;
  height:8px;
  border-radius:50%;
  flex:0 0 auto;
}
.page-home .dot--red{background:var(--vermilion);}
.page-home .dot--gold{background:var(--gold);}
.page-home .dot--green{background:var(--turquoise);}
.page-home .drawer-cta{display:inline-block;}

/* ---------- Media queries ---------- */
@media (min-width:560px){
  .page-home .entry-grid{grid-template-columns:repeat(2,1fr);}
  .page-home .index-board{grid-template-columns:repeat(2,1fr);}
  .page-home .contact-mini{grid-template-columns:repeat(2,1fr);}
  .page-home .hero-paths{grid-template-columns:repeat(2,1fr);}
  .page-home .hero-paths .path-card:first-child{grid-column:1 / -1;}
}

@media (min-width:780px){
  .page-home .matrix-row{
    grid-template-columns:1.1fr 1fr 1fr;
    gap:12px;
    align-items:baseline;
    padding:11px 18px;
  }
  .page-home .matrix-head{
    display:grid;
    background:var(--sand);
    font-family:var(--font-head);
    font-weight:800;
    font-size:.8rem;
    letter-spacing:.08em;
    color:var(--indigo);
  }
  .page-home .matrix-row:nth-child(odd){background:rgba(233,218,187,.16);}
  .page-home .matrix-head.matrix-row{background:var(--sand);}
  .page-home .matrix-row .v-std::before,
  .page-home .matrix-row .v-lite::before{content:none;}
  .page-home .version-grid{grid-template-columns:repeat(2,1fr);}
  .page-home .v4-grid{grid-template-columns:1.05fr .95fr;}
  .page-home .index-board{grid-template-columns:repeat(3,1fr);}
}

@media (min-width:900px){
  .page-home .hero-grid{
    grid-template-columns:1.12fr .88fr;
    gap:clamp(28px,4vw,56px);
  }
  .page-home .hero-paths{grid-template-columns:repeat(3,1fr);}
  .page-home .hero-paths .path-card:first-child{grid-column:auto;}
  .page-home .path-card{grid-template-columns:1fr;grid-template-areas:"num" "name" "sub";}
  .page-home .path-num{justify-self:start;}
  .page-home .entry-grid{
    grid-template-columns:repeat(4,1fr);
    grid-auto-rows:minmax(158px,auto);
  }
  .page-home .bento-a{grid-column:span 2;grid-row:span 2;}
  .page-home .bento-b{grid-column:span 2;}
  .page-home .bento-e{grid-column:span 4;}
  .page-home .feedback-grid{grid-template-columns:.95fr 1.05fr;}
  .page-home .index-board{grid-template-columns:repeat(3,1fr);}
}

@media (min-width:1080px){
  .page-home .bento-a{grid-column:span 2;grid-row:span 2;}
  .page-home .bento-e{grid-column:span 2;}
}

@media (prefers-reduced-motion:reduce){
  .page-home .path-card,
  .page-home .bento,
  .page-home .index-cell,
  .page-home .drawer,
  .page-home .drawer-close,
  .page-home .strip-inner a{transition:none;}
}
<<<END>>>
