/* ===== 咨询通道页（page-contact） ===== */
.page-contact{
  --ct-hair:rgba(5,11,18,.14);
  --ct-card:#FBF8F1;
  --ct-tint:rgba(94,122,74,.10);
  position:relative;
  background:var(--paper);
  color:var(--ink-0);
  overflow-x:hidden;
}

.page-contact .wrap{
  padding-inline:clamp(16px,4vw,40px);
}

.page-contact :focus-visible{
  outline:2px solid var(--cyan);
  outline-offset:2px;
}
.page-contact .ct-hero :focus-visible,
.page-contact .ct-sec--paper :focus-visible{
  outline-color:var(--clay);
}

/* ---------- 面包屑 ---------- */
.page-contact .ct-top{
  padding-top:var(--s3);
}
.page-contact .crumbs{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:var(--s1);
  font-size:var(--fs-xs);
  letter-spacing:.08em;
  color:var(--rock);
}
.page-contact .crumbs a{
  color:var(--ink-1);
  text-decoration:none;
  border-bottom:1px solid var(--ct-hair);
  padding-bottom:1px;
}
.page-contact .crumbs a:hover{
  border-bottom-color:var(--clay);
}

/* ---------- 首屏 ---------- */
.page-contact .ct-hero__inner{
  padding-top:var(--s3);
  padding-bottom:var(--s5);
  border-bottom:1px solid var(--ct-hair);
}
.page-contact .ct-hero__kicker{
  margin:0 0 var(--s3);
  font-size:var(--fs-xs);
  font-weight:700;
  letter-spacing:.32em;
  text-transform:uppercase;
  color:var(--clay);
}
.page-contact .ct-hero__title{
  margin:0 0 var(--s3);
  font-size:var(--fs-2xl);
  font-weight:900;
  line-height:1.15;
  letter-spacing:-.01em;
}
.page-contact .ct-hero__lead{
  margin:0;
  max-width:40ch;
  font-size:var(--fs-md);
  line-height:1.75;
  color:var(--ink-1);
}
.page-contact .ct-hero__facts{
  list-style:none;
  margin:var(--s4) 0 0;
  padding:0;
  display:grid;
  gap:0;
  border-top:1px solid var(--ct-hair);
}
.page-contact .ct-hero__facts li{
  display:flex;
  align-items:baseline;
  gap:var(--s2);
  padding:var(--s2) 0;
  border-bottom:1px solid var(--ct-hair);
}
.page-contact .ct-hero__num{
  flex:0 0 auto;
  font-size:var(--fs-lg);
  font-weight:700;
  color:var(--clay);
  letter-spacing:-.02em;
}
.page-contact .ct-hero__key{
  font-size:var(--fs-sm);
  line-height:1.6;
  color:var(--ink-1);
}

/* ---------- 章节外壳 ---------- */
.page-contact .ct-sec{
  padding-block:var(--s5);
}
.page-contact .ct-sec--paper{
  background:var(--paper);
}
.page-contact .ct-sec--deep{
  background:var(--ink-1);
  color:var(--paper);
}
.page-contact .ct-sec__head{
  display:grid;
  gap:var(--s2);
  margin-bottom:var(--s4);
}
.page-contact .ct-sec__num{
  display:block;
  font-size:var(--fs-lg);
  font-weight:700;
  color:var(--clay);
  letter-spacing:.04em;
}
.page-contact .ct-sec__title{
  margin:0 0 var(--s2);
  font-size:var(--fs-xl);
  font-weight:800;
  line-height:1.2;
  letter-spacing:-.01em;
}
.page-contact .ct-sec__lead{
  margin:0;
  max-width:46ch;
  font-size:var(--fs-sm);
  line-height:1.75;
  color:var(--ink-1);
}
.page-contact .ct-sec--deep .ct-sec__num{
  color:var(--cyan);
}
.page-contact .ct-sec--deep .ct-sec__title{
  color:var(--paper);
}
.page-contact .ct-sec--deep .ct-sec__lead{
  color:var(--mist);
}

/* ---------- 三条通道卡 ---------- */
.page-contact .ct-routes__grid{
  display:grid;
  gap:var(--s3);
}
.page-contact .ct-channel{
  display:flex;
  flex-direction:column;
  gap:var(--s2);
  padding:var(--s3);
  background:var(--ct-card);
  border:1px solid var(--ct-hair);
  border-top:3px solid var(--clay);
  border-radius:2px;
  transition:transform .16s var(--ease),border-color .16s var(--ease),box-shadow .16s var(--ease);
}
.page-contact .ct-channel:hover{
  transform:translateY(-2px);
  border-color:rgba(194,112,61,.55);
  box-shadow:0 10px 24px rgba(5,11,18,.07);
}
.page-contact .ct-channel__num{
  font-size:var(--fs-xl);
  font-weight:700;
  line-height:1;
  color:var(--clay);
  letter-spacing:-.02em;
}
.page-contact .ct-channel__title{
  margin:0;
  font-size:var(--fs-lg);
  font-weight:700;
  line-height:1.35;
}
.page-contact .ct-channel__desc{
  margin:0;
  font-size:var(--fs-sm);
  line-height:1.75;
  color:var(--ink-1);
}
.page-contact .ct-channel__list{
  list-style:none;
  margin:0;
  padding:0;
  border-top:1px solid var(--ct-hair);
}
.page-contact .ct-channel__list li{
  padding:var(--s2) 0;
  border-bottom:1px solid var(--ct-hair);
  font-size:var(--fs-sm);
  line-height:1.6;
  color:var(--ink-1);
}
.page-contact .ct-channel__link{
  margin-top:auto;
  align-self:flex-start;
  padding-bottom:2px;
  font-size:var(--fs-sm);
  font-weight:700;
  color:var(--ink-0);
  text-decoration:none;
  border-bottom:1px solid var(--clay);
}
.page-contact .ct-channel__link:hover{
  border-bottom-color:var(--moss);
}

/* ---------- 分派流程图 ---------- */
.page-contact .ct-flow{
  margin:var(--s5) 0 0;
  border:1px solid var(--ct-hair);
  border-radius:2px;
  overflow:hidden;
  background:var(--ink-1);
}
.page-contact .ct-flow img{
  display:block;
  width:100%;
  height:auto;
  object-fit:cover;
}
.page-contact .ct-flow figcaption{
  padding:var(--s2) var(--s3);
  border-top:1px solid var(--line);
  font-size:var(--fs-xs);
  line-height:1.7;
  letter-spacing:.04em;
  color:var(--mist);
}

/* ---------- 权益通道步骤 ---------- */
.page-contact .ct-steps{
  list-style:none;
  margin:0;
  padding:0;
}
.page-contact .ct-step{
  display:grid;
  grid-template-columns:40px minmax(0,1fr);
  gap:var(--s3);
  padding:var(--s3) 0;
  border-top:1px solid var(--ct-hair);
}
.page-contact .ct-step:last-child{
  border-bottom:1px solid var(--ct-hair);
}
.page-contact .ct-step__n{
  font-size:var(--fs-lg);
  font-weight:700;
  line-height:1.1;
  color:var(--clay);
  letter-spacing:-.02em;
}
.page-contact .ct-step__title{
  margin:0 0 var(--s1);
  font-size:var(--fs-md);
  font-weight:700;
  line-height:1.4;
}
.page-contact .ct-step__text{
  margin:0;
  font-size:var(--fs-sm);
  line-height:1.75;
  color:var(--ink-1);
}
.page-contact .ct-note{
  margin:var(--s4) 0 0;
  padding:var(--s3);
  border-left:3px solid var(--moss);
  background:var(--ct-tint);
  font-size:var(--fs-sm);
  line-height:1.75;
  color:var(--ink-1);
}

/* ---------- 邮箱与电话 ---------- */
.page-contact .ct-direct__grid{
  display:grid;
  gap:var(--s3);
}
.page-contact .ct-contact-card{
  display:flex;
  flex-direction:column;
  gap:var(--s2);
  padding:var(--s3);
  background:var(--ink-2);
  border:1px solid var(--line);
  border-radius:2px;
  transition:transform .16s var(--ease),border-color .16s var(--ease);
}
.page-contact .ct-contact-card:hover{
  transform:translateY(-2px);
  border-color:var(--line-hot);
}
.page-contact .ct-contact-card__value{
  margin:0;
  font-size:var(--fs-lg);
  font-weight:700;
  line-height:1.4;
  letter-spacing:-.01em;
  color:var(--cyan);
  word-break:break-all;
}
.page-contact .ct-contact-card__text{
  margin:0;
  font-size:var(--fs-sm);
  line-height:1.75;
  color:var(--mist);
}
.page-contact .ct-contact-card__meta{
  margin:0;
  padding-top:var(--s2);
  border-top:1px solid var(--line-soft);
  font-size:var(--fs-xs);
  line-height:1.7;
  letter-spacing:.06em;
  color:var(--mist);
}

/* ---------- 地址与到访 ---------- */
.page-contact .ct-visit{
  position:relative;
  overflow:hidden;
  background:var(--ink-0);
}
.page-contact .ct-visit__bg{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:.30;
}
.page-contact .ct-visit::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(5,11,18,.72) 0%,rgba(5,11,18,.86) 100%);
}
.page-contact .ct-visit__inner{
  position:relative;
  z-index:1;
  padding-block:var(--s5);
}
.page-contact .ct-addr{
  margin:0 0 var(--s3);
  padding:var(--s3);
  border:1px solid var(--line);
  border-left:3px solid var(--cyan);
  border-radius:2px;
  font-size:var(--fs-sm);
  font-weight:700;
  line-height:1.7;
  letter-spacing:.02em;
  color:var(--paper);
  background:rgba(18,42,66,.72);
  word-break:break-word;
}
.page-contact .ct-visit__list{
  list-style:none;
  margin:0;
  padding:0;
}
.page-contact .ct-visit__list li{
  padding:var(--s2) 0;
  border-top:1px solid var(--line-soft);
  font-size:var(--fs-sm);
  line-height:1.75;
  color:var(--mist);
}
.page-contact .ct-visit__list li:last-child{
  border-bottom:1px solid var(--line-soft);
}

/* ---------- 商务与合作 ---------- */
.page-contact .ct-biz__grid{
  display:grid;
  gap:var(--s3);
}
.page-contact .ct-biz__card{
  display:flex;
  flex-direction:column;
  gap:var(--s2);
  padding:var(--s3);
  background:var(--ink-2);
  border:1px solid var(--line);
  border-radius:2px;
}
.page-contact .ct-biz__title{
  margin:0;
  font-size:var(--fs-md);
  font-weight:700;
  line-height:1.4;
  color:var(--paper);
}
.page-contact .ct-biz__text{
  margin:0;
  font-size:var(--fs-sm);
  line-height:1.75;
  color:var(--mist);
}
.page-contact .ct-biz__materials{
  margin:var(--s4) 0 0;
  padding:var(--s3);
  border:1px dashed var(--line-rock);
  border-radius:2px;
  font-size:var(--fs-sm);
  line-height:1.75;
  color:var(--mist);
}

/* ---------- 提交前准备 ---------- */
.page-contact .ct-fields{
  margin:0;
}
.page-contact .ct-field{
  display:grid;
  gap:var(--s1);
  padding:var(--s3) 0;
  border-top:1px solid var(--ct-hair);
}
.page-contact .ct-field:last-child{
  border-bottom:1px solid var(--ct-hair);
}
.page-contact .ct-field__key{
  margin:0;
  font-size:var(--fs-sm);
  font-weight:700;
  letter-spacing:.08em;
  color:var(--ink-0);
}
.page-contact .ct-field__val{
  margin:0;
  font-size:var(--fs-sm);
  line-height:1.75;
  color:var(--ink-1);
}
.page-contact .ct-rules{
  margin-top:var(--s4);
  padding:var(--s3);
  border:1px solid var(--ct-hair);
  border-left:3px solid var(--clay);
  border-radius:2px;
  background:var(--ct-card);
}
.page-contact .ct-rules__title{
  margin:0 0 var(--s3);
  font-size:var(--fs-md);
  font-weight:700;
  color:var(--ink-0);
}
.page-contact .ct-rules ul{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:var(--s2);
}
.page-contact .ct-rules li{
  display:flex;
  gap:var(--s2);
  font-size:var(--fs-sm);
  line-height:1.75;
  color:var(--ink-1);
}
.page-contact .ct-rules .dot{
  flex:0 0 auto;
  margin-top:.6em;
}

/* ---------- 相关入口 ---------- */
.page-contact .ct-links{
  margin-top:var(--s5);
  padding-top:var(--s3);
  border-top:1px solid var(--ct-hair);
}
.page-contact .ct-links__title{
  margin:0 0 var(--s2);
  font-size:var(--fs-sm);
  font-weight:700;
  letter-spacing:.08em;
  color:var(--ink-0);
}
.page-contact .ct-links__list{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:0;
}
.page-contact .ct-links__item a{
  display:flex;
  flex-direction:column;
  gap:4px;
  padding:var(--s2) 0;
  border-bottom:1px solid var(--ct-hair);
  text-decoration:none;
}
.page-contact .ct-links__name{
  font-size:var(--fs-md);
  font-weight:700;
  color:var(--ink-0);
}
.page-contact .ct-links__desc{
  font-size:var(--fs-xs);
  line-height:1.6;
  letter-spacing:.04em;
  color:var(--ink-1);
}
.page-contact .ct-links__item a:hover .ct-links__name{
  color:var(--clay);
}

/* ---------- 城市轮廓 ---------- */
.page-contact .ct-skyline{
  margin-top:var(--s5);
  color:var(--ink-1);
  opacity:.12;
}
.page-contact .ct-skyline svg{
  display:block;
  width:100%;
  height:72px;
}

/* ---------- 断点 ---------- */
@media (min-width:640px){
  .page-contact .ct-hero__facts{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .page-contact .ct-hero__facts li{
    flex-direction:column;
    align-items:flex-start;
    gap:var(--s1);
    padding:var(--s3) var(--s2);
    border-bottom:1px solid var(--ct-hair);
    border-right:1px solid var(--ct-hair);
  }
  .page-contact .ct-hero__facts li:first-child{
    padding-left:0;
  }
  .page-contact .ct-hero__facts li:last-child{
    border-right:0;
  }
  .page-contact .ct-links__list{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:0 var(--s4);
  }
  .page-contact .ct-skyline svg{
    height:96px;
  }
}

@media (min-width:768px){
  .page-contact .ct-sec__head{
    grid-template-columns:64px minmax(0,1fr);
    gap:var(--s3);
    align-items:start;
  }
  .page-contact .ct-step{
    grid-template-columns:56px minmax(0,1fr);
  }
  .page-contact .ct-direct__grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:var(--s4);
  }
  .page-contact .ct-field{
    grid-template-columns:180px minmax(0,1fr);
    gap:var(--s4);
    align-items:baseline;
  }
}

@media (min-width:900px){
  .page-contact .ct-sec{
    padding-block:var(--s6);
  }
  .page-contact .ct-routes__grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:var(--s4);
  }
  .page-contact .ct-biz__grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:var(--s4);
  }
}

@media (prefers-reduced-motion:reduce){
  .page-contact .ct-channel,
  .page-contact .ct-contact-card{
    transition:none;
  }
  .page-contact .ct-channel:hover,
  .page-contact .ct-contact-card:hover{
    transform:none;
  }
}
