.page-contact{
  --c-gap: clamp(16px, 2.6vw, 30px);
  --c-pad: clamp(18px, 3vw, 28px);
  --c-radius: 3px;
  --c-soft: rgba(58,242,208,.12);
  background: var(--ink);
  color: var(--paper);
  font-family: var(--font-body);
  padding-bottom: clamp(40px, 7vw, 88px);
}

.page-contact .mono{font-family:var(--font-mono);}

/* ---------- 顶部提示窄条 ---------- */
.page-contact .contact-strip{
  background: var(--panel);
  border-top: var(--edge);
  border-bottom: var(--edge);
  box-shadow: inset 3px 0 0 var(--gold);
}
.page-contact .contact-strip__inner{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:8px 18px;
  padding-top:10px;
  padding-bottom:10px;
}
.page-contact .contact-strip__note{
  margin:0;
  font-size:13px;
  line-height:1.6;
  color:var(--mist);
}
.page-contact .contact-strip__note .mono{
  color:var(--cyan);
  letter-spacing:.1em;
  margin-right:6px;
}
.page-contact .contact-strip__link{
  font-size:13px;
  color:var(--cyan);
  text-decoration:none;
  border-bottom:1px solid rgba(58,242,208,.35);
  padding-bottom:1px;
}
.page-contact .contact-strip__link:hover{color:var(--paper);border-color:var(--paper);}

/* ---------- 面包屑 ---------- */
.page-contact .crumbs{
  padding-top: clamp(16px, 2.4vw, 24px);
  font-size:13px;
}

/* ---------- 首屏 ---------- */
.page-contact .contact-hero{
  padding: clamp(20px, 3.4vw, 40px) 0 clamp(24px, 4vw, 44px);
}
.page-contact .contact-hero__grid{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap: clamp(22px, 3.6vw, 44px);
  align-items:center;
}
.page-contact .contact-hero__eyebrow{
  margin:0 0 12px;
  font-size:11px;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--cyan);
}
.page-contact .contact-hero__copy h1{
  margin:0 0 16px;
  font-family:var(--font-display);
  font-weight:900;
  font-size: clamp(30px, 6vw, 52px);
  line-height:1.12;
  letter-spacing:-.02em;
  color:var(--paper);
}
.page-contact .contact-hero__copy .lede{
  margin:0;
  max-width:46ch;
  font-size: clamp(15px, 1.5vw, 17px);
  line-height:1.85;
  color:var(--mist);
}
.page-contact .contact-hero__actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px 14px;
  margin-top: clamp(18px, 2.6vw, 26px);
}
.page-contact .hero-copy-btn{
  font-size:13px;
  padding:9px 16px;
  border-radius:999px;
  border:1px solid var(--line);
  background:var(--panel);
  color:var(--paper);
  cursor:pointer;
  transition:border-color .16s var(--ease), color .16s var(--ease);
}
.page-contact .hero-copy-btn:hover{border-color:var(--cyan);color:var(--cyan);}
.page-contact .contact-hero__jump{
  font-size:13px;
  color:var(--gold);
  text-decoration:none;
  border-bottom:1px solid rgba(234,180,100,.45);
  padding-bottom:2px;
}
.page-contact .contact-hero__jump:hover{color:var(--paper);border-color:var(--paper);}

.page-contact .hero-facts{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(140px, 1fr));
  gap:14px 18px;
  margin: clamp(20px, 3vw, 30px) 0 0;
  padding-top:16px;
  border-top:var(--edge);
}
.page-contact .hero-facts div{margin:0;}
.page-contact .hero-facts dt{
  margin:0 0 5px;
  font-family:var(--font-mono);
  font-size:11px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--mist);
}
.page-contact .hero-facts dd{
  margin:0;
  font-size:14px;
  font-weight:700;
  color:var(--paper);
}

.page-contact .contact-hero__plate{
  margin:0;
  border:1px solid var(--line);
  border-radius:var(--c-radius);
  overflow:hidden;
  box-shadow: var(--shadow);
  background: var(--panel);
}
.page-contact .contact-hero__plate img{
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
  aspect-ratio:3 / 2;
  object-fit:cover;
}

/* ---------- 主体两栏 ---------- */
.page-contact .contact-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap: clamp(26px, 4vw, 52px);
  padding-top: clamp(10px, 2vw, 20px);
}

.page-contact .contact-rail__title{
  margin:0 0 10px;
  font-size:11px;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--mist);
  display:none;
}
.page-contact .contact-rail__list{
  display:flex;
  gap:8px;
  overflow-x:auto;
  margin:0;
  padding:0 0 6px;
  list-style:none;
  -webkit-overflow-scrolling:touch;
}
.page-contact .contact-rail__link{
  display:inline-block;
  white-space:nowrap;
  font-size:13px;
  color:var(--mist);
  text-decoration:none;
  padding:7px 13px;
  border:1px solid var(--line);
  border-radius:999px;
  background:var(--panel);
  transition:color .16s var(--ease), border-color .16s var(--ease);
}
.page-contact .contact-rail__link:hover{color:var(--paper);border-color:var(--mist);}
.page-contact .contact-rail__link.is-active{
  color:var(--cyan);
  border-color:var(--cyan);
  background:var(--c-soft);
}

/* ---------- 章节通用 ---------- */
.page-contact .contact-sec + .contact-sec{
  margin-top: clamp(30px, 4.6vw, 56px);
  padding-top: clamp(30px, 4.6vw, 56px);
  border-top: var(--edge);
}
.page-contact .contact-sec__no{
  margin:0 0 10px;
  font-size:11px;
  letter-spacing:.2em;
  color:var(--cyan);
}
.page-contact .contact-sec__head h2{
  margin:0 0 12px;
  font-family:var(--font-display);
  font-weight:800;
  font-size: clamp(22px, 3.4vw, 32px);
  line-height:1.28;
  letter-spacing:-.01em;
  color:var(--paper);
}
.page-contact .contact-sec__lede{
  margin:0;
  max-width:62ch;
  font-size: clamp(14.5px, 1.4vw, 16px);
  line-height:1.85;
  color:var(--mist);
}

/* ---------- 01 站内事务 ---------- */
.page-contact .intake-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap: clamp(18px, 3vw, 30px);
  margin-top: clamp(20px, 3vw, 30px);
}
.page-contact .intake-plate{
  margin:0;
  border:1px solid var(--line);
  border-radius:var(--c-radius);
  overflow:hidden;
  background:var(--panel);
}
.page-contact .intake-plate img{
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
  aspect-ratio:4 / 3;
  object-fit:cover;
}
.page-contact .intake-steps{
  counter-reset:step;
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:12px;
}
.page-contact .intake-steps li{
  counter-increment:step;
  position:relative;
  padding:16px 18px 16px 56px;
  background:var(--panel);
  border:1px solid var(--line);
  border-radius:var(--c-radius);
}
.page-contact .intake-steps li::before{
  content:counter(step, decimal-leading-zero);
  position:absolute;
  left:18px;
  top:16px;
  font-family:var(--font-mono);
  font-size:13px;
  letter-spacing:.06em;
  color:var(--cyan);
}
.page-contact .intake-steps h3{
  margin:0 0 6px;
  font-size:15.5px;
  font-weight:800;
  line-height:1.5;
  color:var(--paper);
}
.page-contact .intake-steps p{
  margin:0;
  font-size:14px;
  line-height:1.8;
  color:var(--mist);
}

/* ---------- 02 渠道 ---------- */
.page-contact .channel-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:14px;
  margin-top: clamp(20px, 3vw, 30px);
}
.page-contact .channel-card{
  padding: var(--c-pad);
  background: var(--panel);
  border:1px solid var(--line);
  border-top:2px solid var(--line);
  border-radius: var(--c-radius);
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:10px;
}
.page-contact .channel-card--cyan{border-top-color:var(--cyan);}
.page-contact .channel-card--gold{border-top-color:var(--gold);}
.page-contact .channel-card h3{
  margin:0;
  font-size:13px;
  letter-spacing:.14em;
  font-weight:700;
  color:var(--mist);
}
.page-contact .channel-card__value{
  margin:0;
  font-size:15px;
  line-height:1.5;
  color:var(--paper);
  word-break:break-word;
  overflow-wrap:anywhere;
}
.page-contact .channel-card--cyan .channel-card__value{color:var(--cyan);}
.page-contact .channel-card--gold .channel-card__value{color:var(--gold);}
.page-contact .channel-card__desc{
  margin:0;
  font-size:13.5px;
  line-height:1.8;
  color:var(--mist);
  flex:1;
}
.page-contact .channel-card .copy-btn,
.page-contact .addr-frame .copy-btn{
  font-size:12.5px;
  padding:6px 14px;
  border-radius:999px;
  border:1px solid var(--line);
  background:transparent;
  color:var(--mist);
  cursor:pointer;
  transition:color .16s var(--ease), border-color .16s var(--ease);
}
.page-contact .channel-card .copy-btn:hover,
.page-contact .addr-frame .copy-btn:hover{color:var(--cyan);border-color:var(--cyan);}
.page-contact .channel-card__link{
  font-size:13px;
  color:var(--cyan);
  text-decoration:none;
  border-bottom:1px solid rgba(58,242,208,.35);
  padding-bottom:2px;
}
.page-contact .channel-card__link:hover{color:var(--paper);border-color:var(--paper);}

.page-contact .path-map{
  margin: clamp(18px, 3vw, 28px) 0 0;
  padding: clamp(16px, 2.6vw, 26px);
  background: linear-gradient(180deg, rgba(14,42,37,.95), rgba(7,26,23,.95));
  border:1px solid var(--line);
  border-radius: var(--c-radius);
}
.page-contact .path-map svg{
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
}
.page-contact .pm-line{
  fill:none;
  stroke:var(--line);
  stroke-width:1.5;
}
.page-contact .pm-line--cyan{stroke:rgba(58,242,208,.6);}
.page-contact .pm-node{
  fill:var(--ink);
  stroke:var(--gold);
  stroke-width:2;
}
.page-contact .pm-node--cyan{stroke:var(--cyan);}
.page-contact .pm-label{
  fill:var(--paper);
  font-family:var(--font-display);
  font-size:13px;
  font-weight:700;
}
.page-contact .pm-sub{
  fill:var(--mist);
  font-family:var(--font-body);
  font-size:11px;
}
.page-contact .path-map figcaption{
  margin-top:12px;
  font-size:12.5px;
  line-height:1.7;
  color:var(--mist);
}

/* ---------- 03 地址 ---------- */
.page-contact .addr-frame{
  position:relative;
  margin-top: clamp(20px, 3vw, 30px);
  padding: clamp(22px, 3.4vw, 36px);
  background: var(--panel);
  border:1px solid var(--line);
  border-radius: var(--c-radius);
}
.page-contact .addr-frame::before,
.page-contact .addr-frame::after{
  content:"";
  position:absolute;
  width:18px;
  height:18px;
  border:1px solid var(--gold);
  pointer-events:none;
}
.page-contact .addr-frame::before{top:-1px;left:-1px;border-right:0;border-bottom:0;}
.page-contact .addr-frame::after{bottom:-1px;right:-1px;border-left:0;border-top:0;}
.page-contact .addr-frame__label{
  margin:0 0 12px;
  font-size:11px;
  letter-spacing:.18em;
  color:var(--mist);
}
.page-contact .addr-frame__text{
  margin:0 0 14px;
  font-family:var(--font-display);
  font-size: clamp(17px, 2.4vw, 23px);
  font-weight:800;
  line-height:1.6;
  letter-spacing:.01em;
  color:var(--paper);
}
.page-contact .addr-frame__hint{
  margin:0 0 18px;
  max-width:58ch;
  font-size:13.5px;
  line-height:1.85;
  color:var(--mist);
}

/* ---------- 04 合作 ---------- */
.page-contact .partner-stats{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(130px, 1fr));
  gap:1px;
  margin-top: clamp(20px, 3vw, 30px);
  background:var(--line);
  border:1px solid var(--line);
  border-radius: var(--c-radius);
  overflow:hidden;
}
.page-contact .pstat{
  background:var(--panel);
  padding: clamp(16px, 2.4vw, 24px);
  display:flex;
  flex-direction:column;
  gap:6px;
}
.page-contact .pstat__num{
  font-size: clamp(24px, 3.6vw, 34px);
  font-weight:700;
  line-height:1;
  color:var(--gold);
  letter-spacing:-.02em;
}
.page-contact .pstat__label{
  font-size:12.5px;
  line-height:1.6;
  color:var(--mist);
}

.page-contact .partner-list{
  list-style:none;
  margin: clamp(18px, 3vw, 28px) 0 0;
  padding:0;
  display:grid;
  gap:14px;
}
.page-contact .partner-list li{
  padding:0 0 0 18px;
  border-left:2px solid var(--cyan);
}
.page-contact .partner-list li:nth-child(2){border-left-color:var(--gold);}
.page-contact .partner-list li:nth-child(3){border-left-color:var(--violet);}
.page-contact .partner-list h3{
  margin:0 0 6px;
  font-size:15.5px;
  font-weight:800;
  color:var(--paper);
}
.page-contact .partner-list p{
  margin:0;
  font-size:14px;
  line-height:1.8;
  color:var(--mist);
}

.page-contact .template-box{
  margin-top: clamp(18px, 3vw, 26px);
  padding: clamp(18px, 2.8vw, 26px);
  background: rgba(233,180,100,.05);
  border:1px dashed rgba(234,180,100,.4);
  border-radius: var(--c-radius);
}
.page-contact .template-box__label{
  margin:0 0 10px;
  font-size:11px;
  letter-spacing:.16em;
  color:var(--gold);
}
.page-contact .template-box__text{
  margin:0 0 16px;
  font-family:var(--font-mono);
  font-size:13px;
  line-height:1.85;
  color:var(--paper-soft);
  word-break:break-word;
}
.page-contact .template-copy{
  font-size:12.5px;
  padding:8px 16px;
  border-radius:999px;
  border:1px solid rgba(234,180,100,.55);
  background:transparent;
  color:var(--gold);
  cursor:pointer;
  white-space:normal;
  text-align:left;
  line-height:1.6;
  max-width:100%;
  transition:background .16s var(--ease), color .16s var(--ease);
}
.page-contact .template-copy:hover{background:var(--gold);color:var(--ink);}

/* ---------- 05 场景 ---------- */
.page-contact .scenario-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:14px;
  margin-top: clamp(20px, 3vw, 30px);
}
.page-contact .scenario-card{
  padding: var(--c-pad);
  background:var(--panel);
  border:1px solid var(--line);
  border-radius: var(--c-radius);
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:9px;
  transition:border-color .16s var(--ease), transform .18s var(--ease);
}
.page-contact .scenario-card:hover{border-color:var(--mist);transform:translateY(-2px);}
.page-contact .scenario-card__tag{margin:0;}
.page-contact .scenario-card h3{
  margin:0;
  font-size:16px;
  font-weight:800;
  line-height:1.5;
  color:var(--paper);
}
.page-contact .scenario-card p:not(.scenario-card__tag){
  margin:0;
  font-size:13.5px;
  line-height:1.8;
  color:var(--mist);
  flex:1;
}
.page-contact .scenario-card__link{
  font-size:13px;
  color:var(--cyan);
  text-decoration:none;
  border-bottom:1px solid rgba(58,242,208,.35);
  padding-bottom:2px;
}
.page-contact .scenario-card__link:hover{color:var(--paper);border-color:var(--paper);}

/* ---------- 06 固定入口 ---------- */
.page-contact .bar-preview{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:10px 20px;
  margin-top: clamp(20px, 3vw, 30px);
  padding: 16px clamp(16px, 2.4vw, 24px);
  background: var(--panel);
  border:1px solid rgba(234,180,100,.55);
  border-radius: var(--c-radius);
  box-shadow: 0 -1px 0 rgba(234,180,100,.2), var(--shadow);
}
.page-contact .bar-preview__left{
  margin:0;
  font-size:13px;
  letter-spacing:.04em;
  color:var(--gold);
}
.page-contact .bar-preview__right{
  margin:0;
  display:flex;
  align-items:center;
  gap:8px;
  font-size:12.5px;
}
.page-contact .bar-preview__right a{
  color:var(--mist);
  text-decoration:none;
}
.page-contact .bar-preview__right a:hover{color:var(--cyan);}
.page-contact .bar-preview__sep{color:var(--line);}
.page-contact .bar-preview__note{
  margin:14px 0 0;
  max-width:64ch;
  font-size:13.5px;
  line-height:1.85;
  color:var(--mist);
}
.page-contact .bar-preview__note a{
  color:var(--cyan);
  text-decoration:none;
  border-bottom:1px solid rgba(58,242,208,.35);
}
.page-contact .bar-preview__note a:hover{color:var(--paper);border-color:var(--paper);}

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

@media (min-width: 780px){
  .page-contact .intake-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;}
  .page-contact .partner-list{grid-template-columns:repeat(3, minmax(0,1fr));gap:18px;}
}

@media (min-width: 900px){
  .page-contact .contact-hero__grid{grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr);}
  .page-contact .contact-hero__plate{order:-1;}
  .page-contact .channel-grid{grid-template-columns:repeat(3, minmax(0,1fr));}
}

@media (min-width: 960px){
  .page-contact .contact-layout{grid-template-columns:216px minmax(0,1fr);align-items:start;}
  .page-contact .contact-rail-wrap{position:sticky;top:88px;}
  .page-contact .contact-rail__title{display:block;}
  .page-contact .contact-rail__list{
    flex-direction:column;
    overflow:visible;
    padding-bottom:0;
    gap:4px;
  }
  .page-contact .contact-rail__link{
    display:block;
    border:0;
    border-left:1px solid var(--line);
    border-radius:0;
    background:transparent;
    padding:9px 0 9px 14px;
    white-space:normal;
  }
  .page-contact .contact-rail__link:hover{border-left-color:var(--mist);}
  .page-contact .contact-rail__link.is-active{
    border-left:1px solid var(--cyan);
    background:transparent;
  }
}

@media (prefers-reduced-motion: reduce){
  .page-contact .scenario-card,
  .page-contact .hero-copy-btn,
  .page-contact .contact-rail__link,
  .page-contact .template-copy{transition:none;}
  .page-contact .scenario-card:hover{transform:none;}
}
<<<END>>>
