.page-home{
  --hm-line:rgba(232,226,214,.18);
  --hm-line-dark:rgba(36,26,20,.16);
  --hm-cut:16px;
  background:var(--surface);
  color:var(--brown-black);
}

/* ---------- 首屏框景 ---------- */
.page-home .hm-hero{
  position:relative;
  background:var(--ink-green);
  color:var(--warm-gray);
  padding:clamp(20px,4vw,40px) 0 clamp(28px,5vw,52px);
  overflow:hidden;
}
.page-home .hm-hero::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(rgba(200,162,74,.09) 1px,transparent 1px),
    linear-gradient(90deg,rgba(200,162,74,.09) 1px,transparent 1px);
  background-size:72px 72px;
  pointer-events:none;
}
.page-home .hm-hero__frame{
  position:relative;
  border:1px solid var(--hm-line);
  padding:clamp(16px,3vw,28px) clamp(14px,3vw,30px) clamp(20px,3.6vw,34px);
  clip-path:polygon(0 0,calc(100% - 24px) 0,100% 24px,100% 100%,24px 100%,0 calc(100% - 24px));
}
.page-home .hm-hero__frame::after{
  content:"";
  position:absolute;
  top:0;
  left:clamp(14px,3vw,30px);
  width:64px;
  height:3px;
  background:var(--gold);
}

.page-home .hm-context{
  display:flex;
  align-items:center;
  gap:8px;
  margin:0 0 clamp(16px,2.6vw,26px);
  font-family:var(--font-mono);
  font-size:11px;
  letter-spacing:.14em;
  color:rgba(232,226,214,.62);
}
.page-home .hm-context__dot{
  width:6px;
  height:6px;
  background:var(--cyan);
  flex:none;
}

.page-home .hm-hero__grid{
  display:grid;
  gap:clamp(18px,3vw,34px);
}
.page-home .hm-hero__copy h1{
  margin:0;
  font-family:var(--font-display);
  font-size:clamp(30px,6.2vw,56px);
  line-height:1.08;
  letter-spacing:-.02em;
  font-weight:800;
  color:var(--cream);
}
.page-home .hm-hero__lede{
  margin:clamp(14px,2vw,20px) 0 0;
  max-width:46ch;
  font-size:clamp(15px,1.6vw,17px);
  line-height:1.78;
  color:rgba(232,226,214,.82);
}
.page-home .hm-hero__actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:clamp(18px,2.6vw,26px);
}
.page-home .hm-hero__facts{
  display:flex;
  flex-wrap:wrap;
  gap:16px 30px;
  margin:clamp(20px,3vw,28px) 0 0;
  padding-top:18px;
  border-top:1px solid var(--hm-line);
}
.page-home .hm-hero__facts dt{
  font-family:var(--font-mono);
  font-size:11px;
  letter-spacing:.12em;
  color:rgba(232,226,214,.55);
}
.page-home .hm-hero__facts dd{
  margin:5px 0 0;
  font-family:var(--font-mono);
  font-size:clamp(17px,2.2vw,22px);
  font-weight:600;
  color:var(--pale-gold);
  letter-spacing:.02em;
}
.page-home .hm-hero__media{
  margin:0;
  border:1px solid rgba(232,226,214,.22);
  align-self:end;
}
.page-home .hm-hero__media img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:16 / 9;
  object-fit:cover;
}

/* ---------- 首屏刻度时间轴 ---------- */
.page-home .hm-axis{
  margin-top:clamp(22px,3.4vw,34px);
  padding-top:18px;
  border-top:1px solid var(--hm-line);
}
.page-home .hm-axis__head{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  justify-content:space-between;
  gap:10px;
}
.page-home .hm-axis__title{
  margin:0;
  font-family:var(--font-display);
  font-size:clamp(15px,2vw,19px);
  font-weight:700;
  letter-spacing:.01em;
  color:var(--cream);
}
.page-home .hm-axis__more{
  font-family:var(--font-mono);
  font-size:12px;
  letter-spacing:.08em;
  color:var(--cyan);
  text-decoration:none;
  border-bottom:1px solid rgba(47,212,196,.45);
  padding-bottom:2px;
}
.page-home .hm-axis__list{
  display:flex;
  list-style:none;
  margin:16px 0 0;
  padding:0;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  -webkit-overflow-scrolling:touch;
}
.page-home .hm-axis__item{
  position:relative;
  flex:0 0 min(78%,250px);
  scroll-snap-align:start;
  display:flex;
  flex-direction:column;
  gap:7px;
  padding:14px 16px 18px;
  border-left:1px solid var(--hm-line);
  background:linear-gradient(180deg,rgba(232,226,214,.05),transparent 70%);
  transition:background .24s var(--ease);
}
.page-home .hm-axis__item:hover{
  background:linear-gradient(180deg,rgba(200,162,74,.14),transparent 70%);
}
.page-home .hm-axis__item::before{
  content:"";
  position:absolute;
  top:0;
  left:-1px;
  width:1px;
  height:10px;
  background:var(--gold);
}
.page-home .hm-axis__item--now{
  background:linear-gradient(180deg,rgba(200,162,74,.18),transparent 72%);
}
.page-home .hm-axis__item--now::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:2px;
  background:var(--cyan);
}
.page-home .hm-axis__day{
  font-family:var(--font-mono);
  font-size:11px;
  letter-spacing:.16em;
  color:var(--gold);
}
.page-home .hm-axis__time{
  font-family:var(--font-mono);
  font-size:clamp(22px,3.2vw,28px);
  font-weight:600;
  color:var(--cream);
  letter-spacing:.02em;
}
.page-home .hm-axis__item--now .hm-axis__time{
  color:var(--pale-gold);
}
.page-home .hm-axis__label{
  font-size:13px;
  color:rgba(232,226,214,.75);
}
.page-home .hm-axis__hint{
  margin:16px 0 0;
  font-size:13px;
  line-height:1.7;
  color:rgba(232,226,214,.58);
  max-width:64ch;
}

/* ---------- 通用小标题组 ---------- */
.page-home .hm-head{
  max-width:62ch;
  margin-bottom:clamp(20px,3vw,32px);
}
.page-home .hm-head h2{
  margin:10px 0 12px;
  font-family:var(--font-display);
  font-size:clamp(23px,4vw,36px);
  line-height:1.16;
  letter-spacing:-.01em;
  font-weight:800;
}
.page-home .hm-head__note{
  margin:0;
  line-height:1.78;
  color:rgba(36,26,20,.74);
}

/* ---------- 战报速览 ---------- */
.page-home .hm-reports__grid{
  display:grid;
  gap:14px;
}
.page-home .hm-reports__media{
  margin:0;
  border:1px solid var(--hm-line-dark);
}
.page-home .hm-reports__media img{
  display:block;
  width:100%;
  height:100%;
  aspect-ratio:4 / 3;
  object-fit:cover;
}
.page-home .hm-report{
  position:relative;
  display:flex;
  flex-direction:column;
  gap:8px;
  padding:18px 18px 20px;
  background:var(--surface-alt);
  border:1px solid var(--hm-line-dark);
  clip-path:polygon(0 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%);
  transition:border-color .24s var(--ease),background .24s var(--ease);
}
.page-home .hm-report:hover{
  border-color:var(--gold);
  background:var(--cream);
}
.page-home .hm-report__meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
.page-home .hm-report__stamp{
  font-family:var(--font-mono);
  font-size:12px;
  letter-spacing:.08em;
  color:var(--moss);
}
.page-home .hm-report h3{
  margin:2px 0 0;
  font-family:var(--font-display);
  font-size:17px;
  line-height:1.4;
  font-weight:700;
}
.page-home .hm-report p{
  margin:0;
  font-size:14px;
  line-height:1.72;
  color:rgba(36,26,20,.76);
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.page-home .hm-report__data{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  list-style:none;
  margin:auto 0 0;
  padding:10px 0 0;
  border-top:1px solid var(--hm-line-dark);
}
.page-home .hm-report__data li{
  font-family:var(--font-mono);
  font-size:11px;
  letter-spacing:.06em;
  color:var(--deep-green);
  border-bottom:1px solid rgba(47,212,196,.7);
  padding-bottom:1px;
}
.page-home .hm-reports__foot{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:12px 20px;
  margin-top:clamp(20px,3vw,28px);
}
.page-home .hm-reports__foot p{
  margin:0;
  flex:1 1 220px;
  font-size:13px;
  line-height:1.7;
  color:rgba(36,26,20,.62);
}

/* ---------- Bento 入口板 ---------- */
.page-home .hm-bento{
  display:grid;
  gap:14px;
}
.page-home .hm-bento__cell{
  position:relative;
  display:flex;
  flex-direction:column;
  gap:10px;
  padding:clamp(18px,2.6vw,24px);
  border:1px solid var(--hm-line-dark);
  background:var(--surface);
  transition:border-color .24s var(--ease);
}
.page-home .hm-bento__cell:hover{
  border-color:var(--gold);
}
.page-home .hm-bento__cell h3{
  margin:0;
  font-family:var(--font-display);
  font-size:clamp(18px,2.4vw,22px);
  line-height:1.32;
  font-weight:700;
}
.page-home .hm-bento__text{
  margin:0;
  font-size:14px;
  line-height:1.78;
  color:rgba(36,26,20,.76);
}
.page-home .hm-bento__figure{
  margin:0;
  border:1px solid var(--hm-line-dark);
}
.page-home .hm-bento__figure img{
  display:block;
  width:100%;
  height:auto;
  object-fit:cover;
}
.page-home .hm-bento__cell--venue{
  background:var(--deep-green);
  color:var(--warm-gray);
  border-color:rgba(232,226,214,.2);
  clip-path:polygon(0 0,calc(100% - 20px) 0,100% 20px,100% 100%,0 100%);
}
.page-home .hm-bento__cell--venue .hm-bento__text{
  color:rgba(232,226,214,.8);
}
.page-home .hm-bento__cell--venue h3{
  color:var(--cream);
}
.page-home .hm-bento__cell--venue .hm-bento__figure{
  border-color:rgba(232,226,214,.22);
}
.page-home .hm-bento__cell--desktop{
  background:var(--surface-alt);
}
.page-home .hm-bento__cell--help{
  background:var(--cream);
}
.page-home .hm-bento__cell--partner{
  background:var(--moss);
  color:var(--warm-gray);
  border-color:rgba(232,226,214,.2);
}
.page-home .hm-bento__cell--partner h3{
  color:var(--cream);
}
.page-home .hm-bento__cell--partner .hm-bento__text{
  color:rgba(232,226,214,.82);
}
.page-home .hm-venue__tags{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  list-style:none;
  margin:0;
  padding:0;
}
.page-home .hm-venue__tags li{
  font-family:var(--font-mono);
  font-size:11px;
  letter-spacing:.06em;
  padding:5px 9px;
  border:1px solid rgba(232,226,214,.3);
  color:var(--pale-gold);
}

/* ---------- 短路径链接 ---------- */
.page-home .hm-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  width:max-content;
  max-width:100%;
  margin-top:auto;
  padding-bottom:3px;
  font-family:var(--font-mono);
  font-size:12px;
  letter-spacing:.08em;
  color:var(--moss);
  text-decoration:none;
  border-bottom:1px solid rgba(31,87,72,.42);
  transition:color .2s var(--ease),border-color .2s var(--ease);
}
.page-home .hm-link:hover{
  color:var(--brown-black);
  border-color:var(--gold);
}
.page-home .hm-bento__cell--venue .hm-link,
.page-home .hm-bento__cell--partner .hm-link{
  color:var(--pale-gold);
  border-bottom-color:rgba(200,162,74,.55);
}
.page-home .hm-bento__cell--venue .hm-link:hover,
.page-home .hm-bento__cell--partner .hm-link:hover{
  color:var(--cyan);
  border-color:var(--cyan);
}
.page-home .hm-link--light{
  color:var(--pale-gold);
  border-bottom-color:rgba(200,162,74,.55);
  margin-top:0;
}
.page-home .hm-link--light:hover{
  color:var(--cyan);
  border-color:var(--cyan);
}

/* ---------- 按日期找档案 ---------- */
.page-home .hm-archive{
  background:var(--surface-alt);
  border-top:1px solid var(--hm-line-dark);
  border-bottom:1px solid var(--hm-line-dark);
}
.page-home .hm-archive__grid{
  display:grid;
  gap:clamp(20px,3vw,36px);
}
.page-home .hm-archive__aside h2{
  margin:10px 0 0;
  font-family:var(--font-display);
  font-size:clamp(22px,3.4vw,30px);
  line-height:1.2;
  font-weight:800;
  letter-spacing:-.01em;
}
.page-home .hm-index{
  list-style:none;
  margin:18px 0 0;
  padding:0;
  border-top:1px solid var(--hm-line-dark);
}
.page-home .hm-index li{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:12px;
  padding:10px 0;
  border-bottom:1px dashed var(--hm-line-dark);
  font-size:14px;
}
.page-home .hm-index a{
  font-family:var(--font-mono);
  font-size:12px;
  letter-spacing:.06em;
  color:var(--deep-green);
  text-decoration:none;
  border-bottom:1px solid transparent;
}
.page-home .hm-index a:hover{
  color:var(--brown-black);
  border-bottom-color:var(--gold);
}
.page-home .hm-archive__note{
  margin:14px 0 0;
  font-size:13px;
  line-height:1.7;
  color:rgba(36,26,20,.62);
}
.page-home .hm-archive__bar{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
}
.page-home .hm-chips{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.page-home .hm-archive__count{
  font-family:var(--font-mono);
  font-size:12px;
  letter-spacing:.06em;
  color:var(--moss);
}
.page-home .hm-stack{
  display:grid;
  gap:12px;
}
.page-home .hm-stack__item{
  display:flex;
  flex-direction:column;
  gap:6px;
  padding:16px 18px;
  background:var(--cream);
  border:1px solid var(--hm-line-dark);
  border-left:3px solid var(--gold);
  color:inherit;
  text-decoration:none;
  transition:border-color .22s var(--ease),background .22s var(--ease);
}
.page-home .hm-stack__item:hover{
  border-color:var(--gold);
  background:#fff;
}
.page-home .hm-stack__stage{
  font-family:var(--font-mono);
  font-size:11px;
  letter-spacing:.16em;
  color:var(--moss);
}
.page-home .hm-stack__item h3{
  margin:0;
  font-family:var(--font-display);
  font-size:16px;
  line-height:1.42;
  font-weight:700;
}
.page-home .hm-stack__item p{
  margin:0;
  font-size:13px;
  line-height:1.72;
  color:rgba(36,26,20,.74);
}

/* ---------- 团队与更新节奏 ---------- */
.page-home .hm-ops{
  background:var(--deep-green);
  color:var(--warm-gray);
}
.page-home .hm-ops__grid{
  display:grid;
  gap:clamp(22px,3.4vw,38px);
}
.page-home .hm-ops__copy h2{
  margin:10px 0 12px;
  font-family:var(--font-display);
  font-size:clamp(23px,3.8vw,34px);
  line-height:1.18;
  font-weight:800;
  letter-spacing:-.01em;
  color:var(--cream);
}
.page-home .hm-ops__copy p{
  margin:0;
  font-size:14px;
  line-height:1.82;
  color:rgba(232,226,214,.8);
  max-width:56ch;
}
.page-home .hm-ops__stats{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1px;
  background:rgba(232,226,214,.2);
}
.page-home .hm-ops__stats li{
  background:var(--deep-green);
  padding:16px 14px;
}
.page-home .hm-ops__stats strong{
  display:block;
  font-family:var(--font-mono);
  font-size:clamp(20px,3vw,28px);
  font-weight:600;
  color:var(--gold);
  letter-spacing:.02em;
}
.page-home .hm-ops__stats span{
  display:block;
  margin-top:6px;
  font-size:12px;
  letter-spacing:.04em;
  color:rgba(232,226,214,.7);
}

/* ---------- 三条路线 ---------- */
.page-home .hm-routes__grid{
  display:grid;
  gap:14px;
}
.page-home .hm-route{
  position:relative;
  display:flex;
  flex-direction:column;
  gap:10px;
  padding:24px 20px 22px;
  background:var(--surface);
  border:1px solid var(--hm-line-dark);
  clip-path:polygon(0 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%);
  transition:border-color .24s var(--ease);
}
.page-home .hm-route::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  width:40px;
  height:3px;
  background:var(--gold);
}
.page-home .hm-route:hover{
  border-color:var(--gold);
}
.page-home .hm-route__num{
  font-family:var(--font-mono);
  font-size:12px;
  letter-spacing:.18em;
  color:var(--gold);
}
.page-home .hm-route h3{
  margin:0;
  font-family:var(--font-display);
  font-size:18px;
  line-height:1.36;
  font-weight:700;
}
.page-home .hm-route p{
  margin:0;
  font-size:14px;
  line-height:1.76;
  color:rgba(36,26,20,.76);
}

/* ---------- 结尾入口 ---------- */
.page-home .hm-cta{
  position:relative;
  overflow:hidden;
  background:var(--ink-green);
  color:var(--warm-gray);
  padding:clamp(32px,5vw,56px) 0;
}
.page-home .hm-cta::after{
  content:"";
  position:absolute;
  top:-30%;
  right:-10%;
  width:52%;
  height:170%;
  background:repeating-linear-gradient(115deg,rgba(200,162,74,.16) 0 2px,transparent 2px 22px);
  pointer-events:none;
}
.page-home .hm-cta__inner{
  position:relative;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:20px 32px;
}
.page-home .hm-cta__copy h2{
  margin:0 0 10px;
  font-family:var(--font-display);
  font-size:clamp(22px,3.6vw,32px);
  line-height:1.2;
  font-weight:800;
  color:var(--cream);
}
.page-home .hm-cta__copy p{
  margin:0;
  max-width:52ch;
  font-size:14px;
  line-height:1.78;
  color:rgba(232,226,214,.8);
}
.page-home .hm-cta__actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:14px 22px;
}

/* ---------- 响应式 ---------- */
@media (min-width:640px){
  .page-home .hm-reports__grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .page-home .hm-stack{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (min-width:880px){
  .page-home .hm-hero__grid{
    grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
    align-items:end;
  }
  .page-home .hm-axis__list{
    overflow:visible;
  }
  .page-home .hm-axis__item{
    flex:1 1 0;
    min-width:0;
  }
  .page-home .hm-ops__grid{
    grid-template-columns:minmax(0,5fr) minmax(0,7fr);
    align-items:start;
  }
  .page-home .hm-bento{
    grid-template-columns:repeat(3,minmax(0,1fr));
    grid-template-areas:
      "venue venue desktop"
      "help partner desktop";
  }
  .page-home .hm-bento__cell--venue{grid-area:venue;}
  .page-home .hm-bento__cell--desktop{grid-area:desktop;}
  .page-home .hm-bento__cell--help{grid-area:help;}
  .page-home .hm-bento__cell--partner{grid-area:partner;}
}

@media (min-width:920px){
  .page-home .hm-archive__grid{
    grid-template-columns:minmax(0,3fr) minmax(0,9fr);
    align-items:start;
  }
  .page-home .hm-routes__grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media (min-width:1080px){
  .page-home .hm-reports__grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
  .page-home .hm-reports__media{
    grid-row:span 1;
  }
}

@media (prefers-reduced-motion:reduce){
  .page-home .hm-report,
  .page-home .hm-stack__item,
  .page-home .hm-bento__cell,
  .page-home .hm-route,
  .page-home .hm-link,
  .page-home .hm-axis__item{
    transition:none;
  }
}
<<<END>>>
