.page-home{
  --ph-radius:6px;
  --ph-line:1px solid rgba(143,163,181,.24);
  --ph-shadow:0 26px 60px -34px rgba(3,10,18,.95);
  overflow-x:clip;
}

.page-home h1,
.page-home h2,
.page-home h3{
  font-family:var(--font-display);
  font-weight:800;
  letter-spacing:-.015em;
  line-height:1.02;
}

.page-home .eyebrow{
  font-size:.74rem;
  letter-spacing:.24em;
  text-transform:uppercase;
}

/* ---------- 首屏拼贴 ---------- */
.page-home .ph-hero{
  position:relative;
  display:grid;
  gap:clamp(16px,3.2vw,30px);
  max-width:var(--shell);
  margin:0 auto;
  padding:calc(var(--header-h) + 26px) var(--gutter) clamp(30px,5vw,56px);
}

.page-home .ph-hero__lede h1{
  font-size:clamp(2.5rem,10vw,5.2rem);
  line-height:.94;
  letter-spacing:-.025em;
  color:var(--cream);
  margin:.28em 0 .38em;
}

.page-home .ph-hero__intro{
  margin:0;
  max-width:34em;
  color:rgba(244,235,221,.82);
  font-size:clamp(1rem,2.6vw,1.1rem);
  line-height:1.85;
}

.page-home .ph-hero__actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin:22px 0 26px;
}

.page-home .ph-figures{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin:0;
  padding-top:16px;
  border-top:var(--ph-line);
}

.page-home .ph-figures dt{
  font-size:.74rem;
  letter-spacing:.14em;
  color:var(--mist);
}

.page-home .ph-figures dd{
  margin:4px 0 0;
  font-size:clamp(1.3rem,4.4vw,1.75rem);
  line-height:1.1;
  color:var(--gold);
}

.page-home .ph-hero__stage{
  position:relative;
  display:grid;
  align-content:end;
  min-height:min(460px,88vw);
  padding:clamp(12px,3vw,20px);
  border-radius:var(--ph-radius);
  overflow:hidden;
  background:var(--navy-3);
}

.page-home .ph-hero__bg{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:.46;
  filter:saturate(.85);
}

.page-home .ph-hero__stage::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(6,17,28,.1) 0%,rgba(6,17,28,.55) 58%,rgba(6,17,28,.9) 100%);
}

.page-home .ph-hero__anno{
  position:absolute;
  top:14px;
  right:12px;
  z-index:2;
  writing-mode:vertical-rl;
  font-size:12px;
  letter-spacing:.28em;
  color:rgba(217,199,167,.72);
}

.page-home .ph-card{
  position:relative;
  z-index:2;
  background:rgba(244,235,221,.95);
  color:var(--brown);
  border-radius:4px;
  padding:clamp(14px,3.4vw,20px);
  box-shadow:var(--ph-shadow);
  border:1px solid rgba(217,199,167,.9);
}

.page-home .ph-card__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}

.page-home .ph-card__ver{
  font-size:11px;
  letter-spacing:.16em;
  color:rgba(32,26,23,.55);
}

.page-home .ph-card__label{
  margin:14px 0 0;
  font-size:.82rem;
  letter-spacing:.18em;
  color:rgba(32,26,23,.6);
}

.page-home .ph-card__num{
  margin:2px 0 10px;
  font-size:clamp(2.2rem,9vw,3rem);
  line-height:1;
  color:var(--brown);
  font-variant-numeric:tabular-nums;
}

.page-home .ph-card__num span{
  font-size:.42em;
  margin-left:2px;
  color:var(--flame);
}

.page-home .ph-bars{
  display:flex;
  gap:3px;
  height:9px;
  margin:0 0 12px;
}

.page-home .ph-bars span{
  display:block;
  border-radius:2px;
  background:rgba(32,26,23,.13);
}

.page-home .ph-bars .b1{flex:3}
.page-home .ph-bars .b2{flex:2}
.page-home .ph-bars .b3{flex:4}
.page-home .ph-bars .b4{flex:2}
.page-home .ph-bars .b5{flex:5}
.page-home .ph-bars .b6{flex:3}
.page-home .ph-bars .b7{flex:6}
.page-home .ph-bars .b8{flex:2}
.page-home .ph-bars .b9{flex:4}
.page-home .ph-bars .b10{flex:2}

.page-home .ph-bars .is-on{background:var(--gold)}
.page-home .ph-bars .is-teal{background:var(--teal)}

.page-home .ph-spark{
  display:block;
  width:100%;
  height:auto;
  margin-bottom:12px;
}

.page-home .ph-card__list{
  list-style:none;
  margin:0 0 14px;
  padding:0;
}

.page-home .ph-card__list li{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:12px;
  padding:7px 0;
  font-size:.86rem;
  border-bottom:1px dashed rgba(32,26,23,.18);
}

.page-home .ph-card__list li:last-child{border-bottom:none}

.page-home .ph-card__list .mono{
  font-size:.95rem;
  color:var(--brown);
  font-variant-numeric:tabular-nums;
}

.page-home .ph-card__link{
  display:inline-block;
  font-size:.86rem;
  font-weight:700;
  color:var(--brown);
  text-decoration:none;
  border-bottom:2px solid var(--flame);
  padding-bottom:2px;
}

.page-home .ph-card__link:hover,
.page-home .ph-card__link:focus-visible{
  color:var(--flame);
}

.page-home .ph-notice{
  grid-column:1/-1;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px 14px;
  padding:13px 18px;
  background:var(--ink);
  color:var(--cream);
  text-decoration:none;
  border-left:4px solid var(--gold);
  border-radius:3px;
  transform:rotate(-.7deg);
  transition:transform .28s var(--ease),background .28s var(--ease);
}

.page-home .ph-notice:hover,
.page-home .ph-notice:focus-visible{
  transform:rotate(0deg) translateY(-2px);
  background:var(--ink-2);
}

.page-home .ph-notice__text{
  font-size:.92rem;
  color:rgba(244,235,221,.92);
}

.page-home .ph-notice__detail{
  flex-basis:100%;
  max-height:0;
  overflow:hidden;
  opacity:0;
  font-size:.84rem;
  line-height:1.7;
  color:var(--mist);
  transition:max-height .32s var(--ease),opacity .32s var(--ease);
}

.page-home .ph-notice:hover .ph-notice__detail,
.page-home .ph-notice:focus-visible .ph-notice__detail{
  max-height:6em;
  opacity:1;
}

.page-home .ph-notice__more{
  margin-left:auto;
  font-size:12px;
  letter-spacing:.16em;
  color:var(--gold);
}

/* ---------- 排期时间轴 ---------- */
.page-home .ph-slate{
  background:linear-gradient(180deg,var(--navy-2) 0%,var(--navy-3) 100%);
  border-top:1px solid rgba(143,163,181,.14);
  border-bottom:1px solid rgba(143,163,181,.14);
  padding:clamp(32px,6vw,66px) 0;
}

.page-home .ph-slate__inner{
  max-width:var(--shell);
  margin:0 auto;
  padding:0 var(--gutter);
  display:grid;
  gap:clamp(22px,4vw,42px);
}

.page-home .ph-slate__rail h2,
.page-home .ph-path h2,
.page-home .ph-data h2,
.page-home .ph-release h2,
.page-home .ph-scenes h2,
.page-home .ph-contact h2{
  font-size:clamp(1.6rem,5.2vw,2.5rem);
  margin:.24em 0 0;
  color:var(--cream);
}

.page-home .tl{
  list-style:none;
  margin:20px 0 0;
  padding:0 0 0 18px;
  position:relative;
}

.page-home .tl::before{
  content:"";
  position:absolute;
  left:4px;
  top:8px;
  bottom:8px;
  width:2px;
  background:linear-gradient(180deg,var(--gold) 0%,rgba(143,163,181,.18) 100%);
}

.page-home .tl__item{position:relative}

.page-home .tl__item::before{
  content:"";
  position:absolute;
  left:-18px;
  top:24px;
  width:10px;
  height:10px;
  border-radius:50%;
  background:var(--navy-2);
  border:2px solid var(--gold);
}

.page-home .tl__item.is-now::before{
  background:var(--flame);
  border-color:var(--flame);
  box-shadow:0 0 0 5px rgba(228,87,46,.16);
}

.page-home .tl__link{
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:start;
  gap:6px 12px;
  padding:15px 12px 15px 4px;
  text-decoration:none;
  color:inherit;
  border-bottom:1px solid rgba(143,163,181,.14);
  border-radius:3px;
  transition:background .25s var(--ease);
}

.page-home .tl__link:hover,
.page-home .tl__link:focus-visible{
  background:rgba(245,166,35,.07);
}

.page-home .tl__time{
  font-size:.98rem;
  color:var(--gold);
  font-variant-numeric:tabular-nums;
  padding-top:2px;
}

.page-home .tl__main{
  display:block;
  min-width:0;
}

.page-home .tl__match{
  display:block;
  font-family:var(--font-display);
  font-weight:700;
  font-size:1.05rem;
  color:var(--cream);
}

.page-home .tl__note{
  display:block;
  margin-top:6px;
  font-size:.85rem;
  line-height:1.72;
  color:var(--mist);
}

.page-home .ph-pill{
  align-self:start;
  font-size:11px;
  letter-spacing:.1em;
  padding:3px 8px;
  border-radius:999px;
  border:1px solid rgba(143,163,181,.4);
  color:var(--mist);
  white-space:nowrap;
}

.page-home .ph-pill--live{
  border-color:rgba(228,87,46,.7);
  background:rgba(228,87,46,.16);
  color:var(--rose-lift);
}

.page-home .ph-slate__side{
  align-self:start;
  padding:clamp(18px,4vw,26px);
  border:1px solid rgba(143,163,181,.22);
  border-radius:var(--ph-radius);
  background:linear-gradient(155deg,rgba(46,196,182,.1) 0%,rgba(6,17,28,.55) 60%);
}

.page-home .ph-slate__big{
  margin:0;
  font-size:clamp(3rem,12vw,4.2rem);
  line-height:.95;
  color:var(--gold);
  font-variant-numeric:tabular-nums;
}

.page-home .ph-slate__big span{
  font-size:.3em;
  margin-left:6px;
  letter-spacing:.1em;
  color:var(--sand);
}

.page-home .ph-slate__cap{
  margin:14px 0 20px;
  font-size:.92rem;
  line-height:1.8;
  color:rgba(244,235,221,.8);
}

.page-home .ph-slate__tiny{
  margin:16px 0 0;
  font-size:11px;
  letter-spacing:.14em;
  color:var(--mist);
}

/* ---------- 三步路径 ---------- */
.page-home .ph-path{
  background:var(--cream);
  color:var(--brown);
  padding:clamp(34px,6vw,72px) 0;
}

.page-home .ph-path__inner{
  max-width:var(--shell);
  margin:0 auto;
  padding:0 var(--gutter);
}

.page-home .ph-path .eyebrow{color:rgba(32,26,23,.5)}

.page-home .ph-path h2{color:var(--brown)}

.page-home .ph-path__steps{
  list-style:none;
  margin:26px 0 0;
  padding:0;
  display:grid;
  gap:0;
}

.page-home .ph-step{
  padding:18px 0 20px;
  border-top:2px solid rgba(32,26,23,.18);
}

.page-home .ph-step__num{
  display:block;
  font-size:.82rem;
  letter-spacing:.2em;
  color:var(--flame);
}

.page-home .ph-step h3{
  font-size:clamp(1.15rem,3.6vw,1.45rem);
  margin:10px 0 8px;
  color:var(--brown);
}

.page-home .ph-step p{
  margin:0;
  font-size:.92rem;
  line-height:1.8;
  color:rgba(32,26,23,.78);
}

.page-home .ph-path__foot{
  margin:24px 0 0;
  display:flex;
  flex-wrap:wrap;
  gap:8px 12px;
  font-size:12px;
  letter-spacing:.12em;
  color:rgba(32,26,23,.42);
}

.page-home .ph-path__foot a{
  color:var(--brown);
  text-decoration:none;
  border-bottom:1px solid rgba(32,26,23,.3);
}

.page-home .ph-path__foot a:hover,
.page-home .ph-path__foot a:focus-visible{
  border-bottom-color:var(--flame);
  color:var(--flame);
}

/* ---------- 数据对照 ---------- */
.page-home .ph-data{
  padding:clamp(34px,6vw,74px) 0;
}

.page-home .ph-data__inner{
  max-width:var(--shell);
  margin:0 auto;
  padding:0 var(--gutter);
  display:grid;
  gap:clamp(22px,4.4vw,48px);
  align-items:center;
}

.page-home .ph-data__text p{
  margin:14px 0 0;
  font-size:.95rem;
  line-height:1.85;
  color:rgba(244,235,221,.8);
}

.page-home .ph-data__list{
  list-style:none;
  margin:20px 0 22px;
  padding:0;
}

.page-home .ph-data__list li{
  display:flex;
  align-items:baseline;
  gap:12px;
  padding:9px 0;
  font-size:.9rem;
  color:rgba(244,235,221,.86);
  border-bottom:1px dashed rgba(143,163,181,.24);
}

.page-home .ph-data__list .mono{
  min-width:2.6em;
  font-size:1.45rem;
  line-height:1;
  color:var(--teal);
  font-variant-numeric:tabular-nums;
}

.page-home .ph-data__figure{
  margin:0;
  transform:rotate(-1.2deg);
}

.page-home .ph-data__figure img{
  display:block;
  width:100%;
  height:auto;
  max-width:100%;
  object-fit:cover;
  border-radius:var(--ph-radius);
  border:1px solid rgba(143,163,181,.28);
  box-shadow:var(--ph-shadow);
}

.page-home .ph-data__figure figcaption{
  margin-top:10px;
  font-size:11px;
  letter-spacing:.14em;
  color:var(--mist);
}

/* ---------- 公告与导出 ---------- */
.page-home .ph-release{
  position:relative;
  overflow:hidden;
  padding:clamp(38px,7vw,84px) 0;
  background:var(--ink);
}

.page-home .ph-release__bg{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:.2;
}

.page-home .ph-release__grid{
  position:relative;
  max-width:var(--shell);
  margin:0 auto;
  padding:0 var(--gutter);
  display:grid;
  gap:16px;
}

.page-home .ph-release__card{
  padding:clamp(20px,4vw,30px);
  border-radius:var(--ph-radius);
  border:1px solid rgba(143,163,181,.24);
  background:rgba(6,17,28,.82);
  backdrop-filter:blur(6px);
}

.page-home .ph-release__card--alt{
  border-color:rgba(245,166,35,.42);
  background:rgba(245,166,35,.07);
}

.page-home .ph-release__card h3{
  font-size:clamp(1.2rem,3.8vw,1.55rem);
  margin:.3em 0 10px;
  color:var(--cream);
}

.page-home .ph-release__card p{
  margin:0 0 10px;
  font-size:.93rem;
  line-height:1.85;
  color:rgba(244,235,221,.8);
}

.page-home .ph-release__cta{
  margin:16px 0 0;
  font-size:.88rem;
}

.page-home .ph-release__cta a{
  color:var(--gold);
  text-decoration:none;
  border-bottom:1px solid rgba(245,166,35,.45);
  padding-bottom:2px;
}

.page-home .ph-release__cta a:hover,
.page-home .ph-release__cta a:focus-visible{
  color:var(--mint);
  border-bottom-color:var(--mint);
}

/* ---------- 场景拼贴 ---------- */
.page-home .ph-scenes{
  padding:clamp(34px,6vw,74px) 0;
}

.page-home .ph-scenes__inner{
  max-width:var(--shell);
  margin:0 auto;
  padding:0 var(--gutter);
}

.page-home .ph-scenes__grid{
  display:grid;
  gap:14px;
  margin-top:24px;
}

.page-home .ph-scene{
  display:flex;
  flex-direction:column;
  gap:10px;
  padding:clamp(18px,3.6vw,26px);
  border-radius:var(--ph-radius);
  border:1px solid rgba(143,163,181,.2);
  background:linear-gradient(160deg,rgba(46,196,182,.09) 0%,rgba(6,17,28,.62) 62%);
  transition:transform .28s var(--ease),border-color .28s var(--ease);
}

.page-home .ph-scene:hover{
  transform:translateY(-3px);
  border-color:rgba(245,166,35,.45);
}

.page-home .ph-scene__num{
  font-size:11px;
  letter-spacing:.18em;
  color:var(--gold);
}

.page-home .ph-scene h3{
  font-size:clamp(1.15rem,3.6vw,1.4rem);
  margin:0;
  color:var(--cream);
}

.page-home .ph-scene p{
  margin:0;
  font-size:.9rem;
  line-height:1.8;
  color:rgba(244,235,221,.76);
}

.page-home .ph-scene a{
  align-self:flex-start;
  font-size:.86rem;
  font-weight:700;
  color:var(--gold);
  text-decoration:none;
  border-bottom:1px solid rgba(245,166,35,.5);
  padding-bottom:2px;
}

.page-home .ph-scene a:hover,
.page-home .ph-scene a:focus-visible{
  color:var(--mint);
  border-bottom-color:var(--mint);
}

.page-home .ph-scene__img{
  display:block;
  width:100%;
  height:auto;
  max-width:100%;
  object-fit:cover;
  border-radius:3px;
  border:1px solid rgba(143,163,181,.24);
}

.page-home .ph-scene__body{
  display:flex;
  flex-direction:column;
  gap:10px;
}

.page-home .ph-scene--bar{
  flex-direction:column;
  background:linear-gradient(120deg,rgba(215,38,99,.12) 0%,rgba(6,17,28,.6) 60%);
}

.page-home .ph-scene__links{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.page-home .ph-scene__links .btn{
  font-size:.84rem;
}

/* ---------- 服务与联系 ---------- */
.page-home .ph-contact{
  padding:0 var(--gutter) clamp(46px,7vw,84px);
}

.page-home .ph-contact__inner{
  max-width:var(--shell);
  margin:0 auto;
  padding:clamp(20px,4vw,36px);
  display:grid;
  gap:20px;
  border-radius:var(--ph-radius);
  background:var(--cream);
  color:var(--brown);
  box-shadow:var(--ph-shadow);
}

.page-home .ph-contact .eyebrow{color:rgba(32,26,23,.5)}

.page-home .ph-contact h2{
  color:var(--brown);
  font-size:clamp(1.45rem,4.6vw,2.1rem);
}

.page-home .ph-contact__lead p{
  margin:12px 0 0;
  font-size:.92rem;
  line-height:1.85;
  color:rgba(32,26,23,.78);
}

.page-home .ph-contact__list{
  list-style:none;
  margin:0;
  padding:0;
}

.page-home .ph-contact__list li{
  display:flex;
  flex-direction:column;
  gap:3px;
  padding:9px 0;
  border-bottom:1px dashed rgba(32,26,23,.2);
}

.page-home .ph-contact__list li:last-child{border-bottom:none}

.page-home .ph-contact__list .mono{
  font-size:11px;
  letter-spacing:.18em;
  color:rgba(32,26,23,.5);
}

.page-home .ph-contact__val{
  font-size:.9rem;
  word-break:break-word;
  color:var(--brown);
}

.page-home .ph-contact__actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.page-home .ph-contact__actions .btn--ghost{
  color:var(--brown);
  border-color:rgba(32,26,23,.4);
}

/* ---------- 断点 ---------- */
@media (min-width:720px){
  .page-home .ph-slate__inner{
    grid-template-columns:7fr 5fr;
    align-items:start;
  }
  .page-home .ph-release__grid{
    grid-template-columns:1fr 1fr;
  }
  .page-home .ph-contact__inner{
    grid-template-columns:1.4fr 1fr;
    align-items:start;
  }
  .page-home .ph-contact__actions{
    grid-column:1/-1;
  }
}

@media (min-width:900px){
  .page-home .ph-hero{
    grid-template-columns:7fr 5fr;
    align-items:start;
  }
  .page-home .ph-hero__lede{
    padding-top:clamp(8px,2.4vw,44px);
  }
  .page-home .ph-hero__stage{
    min-height:520px;
  }
  .page-home .ph-path__steps{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:0;
  }
  .page-home .ph-step{
    border-top:none;
    border-left:2px solid rgba(32,26,23,.18);
    padding:4px 24px 8px 20px;
  }
  .page-home .ph-step:nth-child(2){transform:translateY(16px)}
  .page-home .ph-step:nth-child(3){transform:translateY(6px)}
  .page-home .ph-data__inner{
    grid-template-columns:6fr 6fr;
  }
  .page-home .ph-scenes__grid{
    grid-template-columns:repeat(6,minmax(0,1fr));
  }
  .page-home .ph-scene--wide{
    grid-column:span 4;
    grid-row:span 2;
  }
  .page-home .ph-scene:not(.ph-scene--wide):not(.ph-scene--bar){
    grid-column:span 2;
  }
  .page-home .ph-scene--bar{
    grid-column:span 6;
    flex-direction:row;
    align-items:center;
    justify-content:space-between;
    gap:24px;
  }
  .page-home .ph-scene--bar .ph-scene__body{max-width:62%}
  .page-home .ph-contact__inner{
    grid-template-columns:1.5fr 1fr auto;
    align-items:center;
  }
  .page-home .ph-contact__actions{
    grid-column:auto;
    flex-direction:column;
    align-items:stretch;
  }
  .page-home .tl__note{
    max-height:0;
    opacity:0;
    overflow:hidden;
    transition:max-height .32s var(--ease),opacity .32s var(--ease);
  }
  .page-home .tl__link:hover .tl__note,
  .page-home .tl__link:focus-visible .tl__note{
    max-height:5.4em;
    opacity:1;
  }
  .page-home .ph-notice__detail{
    flex-basis:auto;
    flex:1 1 320px;
  }
}

@media (prefers-reduced-motion:reduce){
  .page-home .ph-notice,
  .page-home .ph-scene,
  .page-home .ph-data__figure{
    transition:none;
    transform:none;
  }
  .page-home .tl__note,
  .page-home .ph-notice__detail{
    transition:none;
  }
  .page-home .ph-step:nth-child(2),
  .page-home .ph-step:nth-child(3){
    transform:none;
  }
}

.page-home{
  --ph-radius:6px;
  --ph-line:1px solid rgba(143,163,181,.24);
  --ph-shadow:0 26px 60px -34px rgba(3,10,18,.95);
}
