.page-contact{
  --ct-gap: clamp(18px,3vw,32px);
  --ct-glass: rgba(18,34,65,.55);
  --ct-band-line: rgba(138,151,173,.18);
  position: relative;
}

/* ---------- 首屏 ---------- */
.page-contact .contact-hero{
  position: relative;
  padding: clamp(14px,2.4vw,26px) 0 clamp(34px,5vw,68px);
}
.page-contact .contact-hero::before{
  content: "";
  position: absolute;
  inset: -8% 0 auto 0;
  height: 78%;
  background:
    radial-gradient(56% 62% at 14% 6%, rgba(111,211,255,.15), transparent 66%),
    radial-gradient(46% 54% at 88% 0%, rgba(154,107,255,.13), transparent 70%);
  pointer-events: none;
}
.page-contact .contact-hero > *{ position: relative; }

.page-contact .contact-hero-inner{
  display: grid;
  gap: var(--ct-gap);
  align-items: start;
}
.page-contact .contact-hero-figure{ margin: 0; }
.page-contact .contact-hero-figure .media-frame{
  border: 1px solid var(--line-ice);
  border-radius: var(--radius);
}

.page-contact .reach-card{
  margin-top: clamp(20px,3.4vw,32px);
  border: 1px solid var(--line-ice);
  background: var(--ct-glass);
  border-radius: var(--radius);
  padding: clamp(2px,1vw,6px) 0 0;
}
.page-contact .reach-block{
  display: grid;
  gap: 6px;
  padding: clamp(14px,2.2vw,20px) clamp(16px,2.4vw,24px);
  border-bottom: 1px solid var(--ct-band-line);
  min-width: 0;
}
.page-contact .reach-block:last-of-type{ border-bottom: 0; }
.page-contact .reach-label{
  font-family: var(--font-mono);
  font-size: .72rem;
  letter-spacing: .16em;
  color: var(--muted);
}
.page-contact .reach-value{
  font-family: var(--font-mono);
  font-weight: 500;
  font-size: clamp(17px,4.1vw,30px);
  line-height: 1.3;
  letter-spacing: -.01em;
  color: var(--silver);
  overflow-wrap: anywhere;
}
.page-contact .reach-value--ice{ color: var(--ice); }
.page-contact .reach-note{
  margin: 0;
  padding: clamp(2px,1vw,6px) clamp(16px,2.4vw,24px) clamp(14px,2.2vw,18px);
  font-size: .8125rem;
  line-height: 1.8;
  color: var(--muted);
}

/* ---------- 渠道列表 ---------- */
.page-contact .contact-link{
  color: var(--ice);
  text-decoration: none;
  border-bottom: 1px solid var(--line-ice);
  transition: color .18s ease-out, border-color .18s ease-out;
}
.page-contact .contact-link:hover,
.page-contact .contact-link:focus-visible{
  color: var(--silver);
  border-color: var(--ice);
}

.page-contact .channel-list{
  list-style: none;
  margin: clamp(20px,3vw,28px) 0 0;
  padding: 0;
  border-top: 1px solid var(--ct-band-line);
}
.page-contact .channel-row{
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0,1fr);
  gap: 6px 14px;
  padding: clamp(16px,2.4vw,24px) 0 clamp(16px,2.4vw,24px) 16px;
  border-bottom: 1px solid var(--ct-band-line);
  transition: background .2s ease-out;
}
.page-contact .channel-row::before{
  content: "";
  position: absolute;
  left: 0;
  top: clamp(16px,2.4vw,24px);
  bottom: clamp(16px,2.4vw,24px);
  width: 2px;
  background: var(--ice);
  opacity: 0;
  transition: opacity .18s ease-out;
}
.page-contact .channel-row:hover::before,
.page-contact .channel-row:focus-within::before{ opacity: 1; }

.page-contact .channel-index{
  grid-row: 1 / span 2;
  font-family: var(--font-mono);
  font-size: .78rem;
  letter-spacing: .08em;
  color: var(--aurora);
  padding-top: 4px;
}
.page-contact .channel-body{ min-width: 0; }
.page-contact .channel-title{
  margin: 0 0 6px;
  font-size: 1.0625rem;
  line-height: 1.4;
  color: var(--silver);
}
.page-contact .channel-value{
  margin: 0 0 8px;
  font-family: var(--font-mono);
  font-size: clamp(15px,3.4vw,19px);
  line-height: 1.5;
  color: var(--ice);
  overflow-wrap: anywhere;
}
.page-contact .channel-text{
  margin: 0;
  max-width: 64ch;
  font-size: .9375rem;
  line-height: 1.78;
  color: var(--soft);
}
.page-contact .channel-tag{
  grid-column: 2;
  justify-self: start;
}

/* ---------- 提交前准备 ---------- */
.page-contact .prepare-grid{
  display: grid;
  gap: var(--ct-gap);
  align-items: start;
}
.page-contact .prepare-main{ min-width: 0; }
.page-contact .prepare-figure{ margin: 0; }
.page-contact .prepare-figure .media-frame{
  border: 1px solid var(--ct-band-line);
  border-radius: var(--radius);
}

.page-contact .prep-list{
  list-style: none;
  counter-reset: prep;
  margin: clamp(18px,3vw,26px) 0 0;
  padding: 0;
  border-top: 1px solid var(--ct-band-line);
}
.page-contact .prep-item{
  counter-increment: prep;
  display: grid;
  grid-template-columns: auto minmax(0,1fr);
  gap: 2px 14px;
  padding: clamp(14px,2.2vw,20px) 0;
  border-bottom: 1px solid var(--ct-band-line);
}
.page-contact .prep-item::before{
  content: "0" counter(prep);
  grid-row: 1 / span 2;
  font-family: var(--font-mono);
  font-size: .8rem;
  letter-spacing: .08em;
  color: var(--aurora);
  padding-top: 4px;
}
.page-contact .prep-title{
  margin: 0;
  font-size: .9375rem;
  font-weight: 700;
  line-height: 1.5;
  color: var(--silver);
}
.page-contact .prep-text{
  margin: 0;
  font-size: .9375rem;
  line-height: 1.75;
  color: var(--soft);
}

.page-contact .prep-details{
  margin-top: clamp(16px,2.6vw,22px);
  border: 1px solid var(--line-ice);
  background: var(--ct-glass);
  border-radius: var(--radius);
}
.page-contact .prep-details summary{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 48px;
  padding: 12px 18px;
  cursor: pointer;
  font-size: .9375rem;
  font-weight: 700;
  color: var(--silver);
  list-style: none;
}
.page-contact .prep-details summary::-webkit-details-marker{ display: none; }
.page-contact .prep-details summary::after{
  content: "+";
  font-family: var(--font-mono);
  font-size: 1.1rem;
  line-height: 1;
  color: var(--ice);
}
.page-contact .prep-details[open] summary::after{ content: "−"; }
.page-contact .prep-template{
  margin: 0;
  padding: 0 18px 18px;
  font-family: var(--font-mono);
  font-size: .8125rem;
  line-height: 1.95;
  color: var(--soft);
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

/* ---------- 响应节奏 ---------- */
.page-contact .response-grid{
  display: grid;
  gap: var(--ct-gap);
  align-items: start;
}
.page-contact .response-main{ min-width: 0; }
.page-contact .response-stats{
  margin: 0;
  display: grid;
  gap: 1px;
  background: var(--ct-band-line);
  border: 1px solid var(--ct-band-line);
  border-radius: var(--radius);
  overflow: hidden;
}
.page-contact .response-stats .stat{
  background: var(--nebula);
  padding: clamp(14px,2.2vw,20px) clamp(16px,2.4vw,22px);
}
.page-contact .response-stats dt{
  font-size: .8125rem;
  line-height: 1.6;
  color: var(--muted);
}
.page-contact .response-stats dd{
  margin: 6px 0 0;
  font-family: var(--font-mono);
  font-size: clamp(19px,3.2vw,26px);
  line-height: 1.35;
  color: var(--ice);
  overflow-wrap: anywhere;
}
.page-contact .response-stats .stat:nth-child(2) dd{ color: var(--silver); }

/* ---------- 合作与媒体 ---------- */
.page-contact .coop-list{
  list-style: none;
  margin: clamp(20px,3vw,28px) 0 0;
  padding: 0;
}
.page-contact .coop-row{
  display: grid;
  gap: 8px;
  padding: clamp(16px,2.4vw,24px) 0;
  border-top: 1px solid var(--ct-band-line);
}
.page-contact .coop-row:last-child{ border-bottom: 1px solid var(--ct-band-line); }
.page-contact .coop-tag{
  justify-self: start;
  font-family: var(--font-mono);
  font-size: .72rem;
  letter-spacing: .12em;
  color: var(--aurora);
  border: 1px solid rgba(154,107,255,.35);
  padding: 4px 10px;
  border-radius: var(--radius);
}
.page-contact .coop-body{ min-width: 0; }
.page-contact .coop-subject{
  margin: 0 0 6px;
  font-family: var(--font-mono);
  font-size: .8125rem;
  line-height: 1.7;
  color: var(--silver);
  overflow-wrap: anywhere;
}
.page-contact .coop-text{
  margin: 0;
  max-width: 70ch;
  font-size: .9375rem;
  line-height: 1.78;
  color: var(--soft);
}

/* ---------- 邮寄与到访 ---------- */
.page-contact .visit-panel{
  border: 1px solid var(--line-ice);
  background:
    linear-gradient(180deg, rgba(111,211,255,.07), rgba(5,11,24,0) 62%),
    var(--nebula);
  border-radius: var(--radius);
  padding: clamp(20px,3.2vw,34px);
}
.page-contact .visit-title{
  margin: 0 0 clamp(14px,2.2vw,20px);
  font-size: clamp(1.125rem,2.4vw,1.5rem);
  line-height: 1.4;
  color: var(--silver);
}
.page-contact .visit-address{
  margin: 0 0 12px;
  font-family: var(--font-mono);
  font-size: clamp(15px,3.2vw,20px);
  line-height: 1.6;
  color: var(--ice);
  overflow-wrap: anywhere;
}
.page-contact .visit-text{
  margin: 0 0 14px;
  max-width: 72ch;
  font-size: .9375rem;
  line-height: 1.8;
  color: var(--soft);
}
.page-contact .visit-meta{
  margin: 0;
  font-family: var(--font-mono);
  font-size: .75rem;
  letter-spacing: .08em;
  color: var(--muted);
}

/* ---------- 底部信息带 ---------- */
.page-contact .contact-band{
  margin-top: clamp(30px,5vw,62px);
  padding: clamp(22px,3.4vw,36px) 0;
  background: var(--ct-glass);
  border-top: 1px solid var(--line-ice);
  border-bottom: 1px solid var(--ct-band-line);
  backdrop-filter: blur(8px);
}
.page-contact .band-grid{
  display: grid;
  gap: clamp(14px,2.2vw,20px);
}
.page-contact .band-cell{
  display: grid;
  gap: 5px;
  min-width: 0;
}
.page-contact .band-key{
  font-family: var(--font-mono);
  font-size: .72rem;
  letter-spacing: .16em;
  color: var(--muted);
}
.page-contact .band-val{
  font-family: var(--font-mono);
  font-size: .9375rem;
  line-height: 1.55;
  color: var(--silver);
  overflow-wrap: anywhere;
}
.page-contact .band-cell--wide .band-val{ font-family: var(--font-body); }
.page-contact .band-foot{ margin-top: clamp(14px,2.2vw,22px); }
.page-contact .band-note{
  margin: 0;
  max-width: 74ch;
  font-size: .8125rem;
  line-height: 1.85;
  color: var(--muted);
}

/* ---------- 断点 ---------- */
@media (min-width: 760px){
  .page-contact .channel-row{
    grid-template-columns: 44px minmax(0,1fr) auto;
    align-items: start;
    gap: 4px 22px;
    padding-left: 20px;
  }
  .page-contact .channel-index{ grid-row: 1; }
  .page-contact .channel-tag{
    grid-column: 3;
    grid-row: 1;
    justify-self: end;
  }
  .page-contact .coop-row{
    grid-template-columns: 158px minmax(0,1fr);
    align-items: start;
    gap: 4px 26px;
  }
  .page-contact .band-grid{
    grid-template-columns: auto auto minmax(0,1fr);
    align-items: start;
    gap: clamp(24px,4vw,52px);
  }
}

@media (min-width: 900px){
  .page-contact .contact-hero-inner{
    grid-template-columns: minmax(0,1.12fr) minmax(0,.88fr);
    gap: clamp(28px,4vw,56px);
  }
  .page-contact .prepare-grid{
    grid-template-columns: minmax(0,1.05fr) minmax(0,.95fr);
    gap: clamp(28px,4vw,52px);
  }
  .page-contact .response-grid{
    grid-template-columns: minmax(0,1fr) minmax(280px,350px);
    gap: clamp(28px,4vw,56px);
  }
  .page-contact .prepare-figure{ position: sticky; top: 92px; }
}

@media (prefers-reduced-motion: reduce){
  .page-contact .channel-row,
  .page-contact .channel-row::before,
  .page-contact .contact-link{ transition: none; }
}
<<<END>>>
