/* ============================================================
   首页 page-home
   ============================================================ */

.page-home {
  --ph-seq-gap: clamp(16px, 3vw, 32px);
  background: var(--ink);
}

/* ------------------------------------------------------------
   通用
   ------------------------------------------------------------ */
.page-home .ph-seq {
  display: inline-block;
  font-family: var(--font-mono);
  font-size: 13px;
  letter-spacing: 0.18em;
  color: var(--orange);
  margin-bottom: 10px;
}

.page-home .h2 {
  margin: 0;
}

.page-home a:focus-visible,
.page-home button:focus-visible {
  outline: 2px solid var(--cyan);
  outline-offset: 3px;
}

.page-home .zones a:focus-visible,
.page-home .zones button:focus-visible,
.page-home .paths a:focus-visible,
.page-home .updates a:focus-visible {
  outline-color: var(--orange-hot);
}

/* ============================================================
   01 首屏
   ============================================================ */
.page-home .hero {
  position: relative;
  background:
    radial-gradient(120% 92% at 90% 6%, rgba(55, 211, 232, 0.13), transparent 62%),
    radial-gradient(84% 74% at 4% 98%, rgba(255, 106, 31, 0.16), transparent 62%),
    var(--ink);
  color: var(--mist);
  padding-top: calc(var(--header-h) + 36px);
  padding-bottom: clamp(52px, 8vw, 88px);
  overflow: hidden;
}

.page-home .hero__inner {
  display: grid;
  gap: clamp(28px, 4vw, 44px);
}

.page-home .hero__copy {
  position: relative;
  padding-left: 40px;
}

@media (min-width: 960px) {
  .page-home .hero__copy {
    padding-left: 52px;
  }
}

.page-home .hero__vnote {
  position: absolute;
  left: 0;
  top: 4px;
  margin: 0;
  writing-mode: vertical-rl;
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.34em;
  color: var(--orange-soft);
}

.page-home .hero__title {
  margin: 12px 0 18px;
  font-family: var(--font-display);
  font-weight: 900;
  font-size: clamp(32px, 6.2vw, 60px);
  line-height: 1.1;
  letter-spacing: -0.02em;
  color: var(--mist);
}

.page-home .hero__lede {
  max-width: 47ch;
  margin: 0 0 24px;
  font-size: 16px;
  line-height: 1.78;
  color: rgba(247, 249, 252, 0.78);
}

.page-home .hero__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.page-home .hero__badge {
  font-family: var(--font-mono);
  font-size: 12px;
  letter-spacing: 0.05em;
  padding: 6px 14px;
  border: 1px solid var(--ink-line);
  border-radius: var(--r-pill);
  color: var(--cyan);
}

/* --- 右栏：倾斜索引卡 + 主视觉 --- */
.page-home .hero__stage {
  position: relative;
  display: grid;
  gap: 16px;
}

.page-home .hero__media {
  order: 2;
  margin: 0;
  border-radius: var(--r-xl);
  overflow: hidden;
  background: var(--ink-2);
}

.page-home .hero__media img {
  display: block;
  width: 100%;
  height: clamp(200px, 46vw, 300px);
  object-fit: cover;
}

.page-home .hero__index {
  order: 1;
  display: grid;
  gap: 12px;
}

.page-home .hdl {
  --tilt: 0deg;
  position: relative;
  display: grid;
  grid-template-columns: 1fr auto;
  grid-template-areas:
    "no arrow"
    "title title"
    "text text";
  gap: 4px 12px;
  padding: 18px 20px;
  border-radius: var(--r-lg);
  border: 1px solid rgba(255, 255, 255, 0.16);
  background: rgba(11, 27, 51, 0.88);
  text-decoration: none;
  color: var(--mist);
  transform: rotate(var(--tilt));
  transition: transform var(--dur) var(--ease),
              border-color var(--dur) var(--ease),
              box-shadow var(--dur) var(--ease);
}

.page-home .hdl:nth-of-type(1) { --tilt: -1.4deg; }
.page-home .hdl:nth-of-type(2) { --tilt: 1.1deg; }
.page-home .hdl:nth-of-type(3) { --tilt: -0.7deg; }

.page-home .hdl:hover,
.page-home .hdl:focus-visible {
  transform: rotate(var(--tilt)) translateY(-4px);
  border-color: var(--orange);
  box-shadow: 0 20px 34px -20px rgba(0, 0, 0, 0.8);
}

.page-home .hdl__no {
  grid-area: no;
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.16em;
  color: var(--cyan);
}

.page-home .hdl__arrow {
  grid-area: arrow;
  font-size: 18px;
  line-height: 1;
  color: var(--orange);
  transition: transform var(--dur) var(--ease);
}

.page-home .hdl:hover .hdl__arrow,
.page-home .hdl:focus-visible .hdl__arrow {
  transform: translateX(4px);
}

.page-home .hdl__title {
  grid-area: title;
  margin-top: 4px;
  font-size: 17px;
  font-weight: 700;
  letter-spacing: 0.01em;
  color: var(--mist);
}

.page-home .hdl__text {
  grid-area: text;
  font-size: 13px;
  line-height: 1.62;
  color: rgba(247, 249, 252, 0.72);
}

@media (min-width: 960px) {
  .page-home .hero__inner {
    grid-template-columns: 38fr 62fr;
    align-items: center;
    gap: clamp(28px, 3vw, 48px);
  }

  .page-home .hero__stage {
    display: block;
    min-height: 560px;
  }

  .page-home .hero__media {
    position: absolute;
    inset: 0 -28px 0 24%;
    border-radius: var(--r-xl);
  }

  .page-home .hero__media img {
    height: 100%;
  }

  .page-home .hero__index {
    position: relative;
    z-index: 2;
    width: min(82%, 400px);
    padding-top: 28px;
  }
}

/* ============================================================
   02 厂商专区索引
   ============================================================ */
.page-home .zones {
  position: relative;
  background: var(--cream);
  color: var(--brown);
  clip-path: polygon(0 32px, 100% 0, 100% 100%, 0 100%);
  padding-top: clamp(88px, 11vw, 128px);
  padding-bottom: clamp(56px, 8vw, 96px);
}

.page-home .zones__head {
  display: grid;
  gap: 22px;
  margin-bottom: clamp(26px, 4vw, 42px);
}

@media (min-width: 900px) {
  .page-home .zones__head {
    grid-template-columns: 1.05fr 1fr;
    align-items: end;
    gap: clamp(24px, 4vw, 56px);
  }
}

.page-home .zones__lede {
  margin: 14px 0 0;
  max-width: 46ch;
  font-size: 15px;
  line-height: 1.78;
  color: var(--graphite);
}

.page-home .zones__media {
  margin: 0;
  border-radius: var(--r-lg);
  overflow: hidden;
  background: var(--ink-2);
}

.page-home .zones__media img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 3 / 2;
  object-fit: cover;
}

.page-home .zones__media figcaption {
  padding: 12px 4px 0;
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.08em;
  color: var(--graphite);
  background: transparent;
}

.page-home .zone-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: clamp(20px, 3vw, 30px);
}

.page-home .zone-filters .pill {
  appearance: none;
  -webkit-appearance: none;
  font-family: var(--font-mono);
  font-size: 12px;
  letter-spacing: 0.04em;
  padding: 8px 16px;
  border: 1px solid rgba(26, 21, 18, 0.3);
  border-radius: var(--r-pill);
  background: transparent;
  color: var(--brown);
  cursor: pointer;
  transition: background-color var(--dur) var(--ease),
              color var(--dur) var(--ease),
              border-color var(--dur) var(--ease);
}

.page-home .zone-filters .pill:hover {
  border-color: var(--orange);
  color: var(--orange-hot);
}

.page-home .zone-filters .pill[aria-pressed="true"],
.page-home .zone-filters .pill--on {
  background: var(--orange);
  border-color: var(--orange);
  color: var(--ink);
}

.page-home .zone-grid {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 14px;
}

@media (min-width: 620px) {
  .page-home .zone-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1000px) {
  .page-home .zone-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
  }
}

.page-home .zone-grid > li {
  display: flex;
}

.page-home .zone-card {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 22px;
  border-radius: var(--r-lg);
  border: 1px solid rgba(26, 21, 18, 0.12);
  background: var(--mist);
  text-decoration: none;
  color: var(--brown);
  transition: transform var(--dur) var(--ease),
              border-color var(--dur) var(--ease),
              box-shadow var(--dur) var(--ease);
}

.page-home .zone-card:hover,
.page-home .zone-card:focus-visible {
  transform: translateY(-4px);
  border-color: var(--orange);
  box-shadow: 0 22px 36px -24px rgba(26, 21, 18, 0.55);
}

.page-home .zone-card__top {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
}

.page-home .zone-card__no {
  font-family: var(--font-mono);
  font-size: 12px;
  letter-spacing: 0.12em;
  color: var(--orange-hot);
}

.page-home .zone-card__title {
  margin: 0;
  font-size: 17px;
  font-weight: 700;
  line-height: 1.4;
  color: var(--brown);
}

.page-home .zone-card__text {
  margin: 0;
  font-size: 14px;
  line-height: 1.72;
  color: var(--graphite);
}

.page-home .zone-card__foot {
  margin-top: auto;
  padding-top: 10px;
  font-family: var(--font-mono);
  font-size: 12px;
  letter-spacing: 0.02em;
  color: var(--orange-hot);
}

/* ============================================================
   03 改版进度锚点
   ============================================================ */
.page-home .progress {
  position: relative;
  background: var(--ink);
  color: var(--mist);
  padding-block: clamp(48px, 6vw, 76px);
  overflow: hidden;
}

.page-home .progress::after {
  content: "";
  position: absolute;
  right: -8%;
  bottom: -50%;
  width: 60%;
  height: 260px;
  background: radial-gradient(closest-side, rgba(55, 211, 232, 0.16), transparent);
  pointer-events: none;
}

.page-home .progress__inner {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 26px;
}

@media (min-width: 900px) {
  .page-home .progress__inner {
    grid-template-columns: 0.92fr 1.08fr;
    align-items: center;
    gap: clamp(28px, 4vw, 56px);
  }
}

.page-home .progress__media {
  margin: 0;
  border-radius: var(--r-lg);
  overflow: hidden;
  border: 1px solid var(--ink-line);
}

.page-home .progress__media img {
  display: block;
  width: 100%;
  height: clamp(170px, 34vw, 260px);
  object-fit: cover;
}

.page-home .progress__lede {
  margin: 12px 0 20px;
  max-width: 48ch;
  font-size: 15px;
  line-height: 1.78;
  color: rgba(247, 249, 252, 0.76);
}

.page-home .ph-steps {
  position: relative;
  list-style: none;
  margin: 0 0 22px;
  padding: 0;
  display: grid;
  gap: 12px;
}

.page-home .ph-steps::before {
  content: "";
  position: absolute;
  left: 11px;
  top: 14px;
  bottom: 14px;
  width: 1px;
  background: linear-gradient(180deg, var(--green), var(--orange), rgba(255, 178, 122, 0.22));
}

.page-home .ph-step {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 14px;
  padding: 8px 0 8px 36px;
}

.page-home .ph-step::before {
  content: "";
  position: absolute;
  left: 5px;
  top: 50%;
  width: 13px;
  height: 13px;
  margin-top: -6.5px;
  border-radius: 50%;
  background: var(--ink);
  border: 2px solid var(--ink-line);
}

.page-home .ph-step--done::before {
  background: var(--green);
  border-color: var(--green);
}

.page-home .ph-step--doing::before {
  background: var(--orange);
  border-color: var(--orange);
  box-shadow: 0 0 0 4px rgba(255, 106, 31, 0.22);
}

.page-home .ph-step__name {
  font-size: 15px;
  font-weight: 600;
  color: var(--mist);
}

.page-home .ph-step__tag {
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.12em;
  padding: 3px 10px;
  border-radius: var(--r-pill);
  border: 1px solid var(--ink-line);
  color: var(--cyan);
}

.page-home .ph-step--done .ph-step__tag {
  color: var(--green);
  border-color: rgba(52, 192, 138, 0.42);
}

.page-home .ph-step--doing .ph-step__tag {
  color: var(--orange);
  border-color: rgba(255, 106, 31, 0.46);
}

/* ============================================================
   04 双路径
   ============================================================ */
.page-home .paths {
  background: var(--cream);
  color: var(--brown);
  clip-path: polygon(0 0, 100% 30px, 100% 100%, 0 100%);
  padding-top: clamp(84px, 10vw, 118px);
  padding-bottom: clamp(56px, 8vw, 96px);
}

.page-home .paths__grid {
  display: grid;
  gap: 16px;
  margin-top: clamp(24px, 4vw, 40px);
}

@media (min-width: 820px) {
  .page-home .paths__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
  }
}

.page-home .path-card {
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: clamp(22px, 3vw, 34px);
  border-radius: var(--r-xl);
  border: 1px solid rgba(26, 21, 18, 0.1);
  background: var(--mist);
}

.page-home .path-card--set {
  background: var(--ink-2);
  border-color: var(--ink-line);
  color: var(--mist);
}

.page-home .path-card__kicker {
  margin: 0;
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.16em;
  color: var(--orange-hot);
}

.page-home .path-card--set .path-card__kicker {
  color: var(--cyan);
}

.page-home .path-card__title {
  margin: 0;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.4;
  color: var(--brown);
}

.page-home .path-card--set .path-card__title {
  color: var(--mist);
}

.page-home .path-card__list {
  list-style: none;
  margin: 0 0 6px;
  padding: 0;
  display: grid;
  gap: 10px;
}

.page-home .path-card__list li {
  position: relative;
  padding-left: 18px;
  font-size: 14px;
  line-height: 1.72;
  color: var(--graphite);
}

.page-home .path-card--set .path-card__list li {
  color: rgba(247, 249, 252, 0.78);
}

.page-home .path-card__list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 11px;
  width: 7px;
  height: 1.5px;
  background: var(--orange);
}

.page-home .path-card .btn {
  align-self: flex-start;
  margin-top: 4px;
}

/* ============================================================
   05 能力与规模
   ============================================================ */
.page-home .scale {
  background: var(--ink-2);
  color: var(--mist);
  padding-block: clamp(48px, 7vw, 82px);
}

.page-home .scale__grid {
  display: grid;
  gap: 22px;
  margin-top: clamp(24px, 4vw, 40px);
}

@media (min-width: 700px) {
  .page-home .scale__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 28px 32px;
  }
}

@media (min-width: 1000px) {
  .page-home .scale__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

.page-home .scale__item {
  padding-left: 18px;
  border-left: 2px solid var(--ink-line);
}

.page-home .scale__num {
  display: block;
  font-family: var(--font-mono);
  font-weight: 700;
  font-size: clamp(30px, 5vw, 44px);
  line-height: 1.06;
  letter-spacing: -0.02em;
  color: var(--orange);
}

.page-home .scale__unit {
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.02em;
  color: var(--cyan);
  margin-left: 4px;
}

.page-home .scale__label {
  display: block;
  margin-top: 10px;
  font-size: 14px;
  line-height: 1.7;
  color: rgba(247, 249, 252, 0.74);
}

/* ============================================================
   06 更新动态
   ============================================================ */
.page-home .updates {
  background: var(--cream);
  color: var(--brown);
  clip-path: polygon(0 0, 100% 26px, 100% 100%, 0 100%);
  padding-top: clamp(80px, 10vw, 116px);
  padding-bottom: clamp(56px, 8vw, 92px);
}

.page-home .update-list {
  list-style: none;
  margin: clamp(24px, 4vw, 40px) 0 0;
  padding: 0;
  border-top: 1px solid rgba(26, 21, 18, 0.16);
}

.page-home .update-list > li {
  border-bottom: 1px solid rgba(26, 21, 18, 0.16);
}

.page-home .update-item {
  display: grid;
  gap: 6px;
  padding: 18px 0;
  text-decoration: none;
  color: var(--brown);
}

@media (min-width: 760px) {
  .page-home .update-item {
    grid-template-columns: 132px minmax(0, 1fr) auto;
    align-items: center;
    gap: 24px;
    padding: 24px 10px 24px 0;
    transition: padding-left var(--dur) var(--ease),
                background-color var(--dur) var(--ease);
  }

  .page-home .update-item:hover,
  .page-home .update-item:focus-visible {
    padding-left: 12px;
    background: rgba(255, 255, 255, 0.55);
  }
}

.page-home .update-item__cat {
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.14em;
  color: var(--orange-hot);
}

.page-home .update-item__title {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.6;
  color: var(--brown);
}

.page-home .update-item__time {
  font-family: var(--font-mono);
  font-size: 12px;
  letter-spacing: 0.02em;
  color: var(--graphite);
}

@media (max-width: 759px) {
  .page-home .update-item__time {
    font-size: 11px;
    color: rgba(43, 49, 59, 0.72);
  }
}

/* ============================================================
   07 联系与备案条
   ============================================================ */
.page-home .contact-bar {
  position: relative;
  background: var(--ink);
  color: var(--mist);
  padding-block: clamp(64px, 9vw, 104px);
  overflow: hidden;
}

.page-home .contact-bar__bg {
  position: absolute;
  inset: 0;
  margin: 0;
  z-index: 0;
}

.page-home .contact-bar__bg img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.26;
}

.page-home .contact-bar__bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(11, 27, 51, 0.7), rgba(11, 27, 51, 0.95));
}

.page-home .contact-bar__inner {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 30px;
}

@media (min-width: 900px) {
  .page-home .contact-bar__inner {
    grid-template-columns: 1fr 1fr;
    gap: clamp(32px, 5vw, 72px);
    align-items: start;
  }
}

.page-home .contact-bar__lede {
  margin: 12px 0 22px;
  max-width: 46ch;
  font-size: 15px;
  line-height: 1.78;
  color: rgba(247, 249, 252, 0.78);
}

.page-home .contact-rows {
  display: grid;
  gap: 16px;
}

.page-home .contact-row {
  display: grid;
  gap: 5px;
  padding-bottom: 14px;
  border-bottom: 1px solid var(--ink-line);
}

.page-home .contact-row__label {
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.16em;
  color: var(--cyan);
}

.page-home .contact-row__value {
  font-size: 15px;
  line-height: 1.6;
  color: var(--mist);
  overflow-wrap: anywhere;
}

.page-home .contact-row__value--mono {
  font-family: var(--font-mono);
  letter-spacing: 0.03em;
}

.page-home .contact-bar__icp {
  margin: 4px 0 0;
  font-family: var(--font-mono);
  font-size: 12px;
  letter-spacing: 0.08em;
  color: rgba(247, 249, 252, 0.58);
}

/* ============================================================
   动效偏好
   ============================================================ */
@media (prefers-reduced-motion: reduce) {
  .page-home .hdl,
  .page-home .hdl__arrow,
  .page-home .zone-card,
  .page-home .zone-filters .pill,
  .page-home .update-item {
    transition: none;
  }

  .page-home .hdl,
  .page-home .hdl:hover,
  .page-home .hdl:focus-visible {
    transform: none;
  }

  .page-home .zone-card:hover,
  .page-home .zone-card:focus-visible {
    transform: none;
  }

  .page-home .hdl:hover .hdl__arrow,
  .page-home .hdl:focus-visible .hdl__arrow {
    transform: none;
  }
}
<<<END>>>
