.page-contact{
  background:var(--night);
  color:var(--ivory);
  font-family:var(--font-body);
  overflow-x:clip;
}

/* ---------- 面包屑 ---------- */
.page-contact .breadcrumbs{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  font-family:var(--font-mono);
  font-size:12px;
  letter-spacing:.08em;
  color:var(--mist);
  margin:0 0 clamp(18px,4vw,32px);
}
.page-contact .breadcrumbs a{
  color:var(--mist);
  text-decoration:none;
  border-bottom:1px solid transparent;
  transition:color .2s var(--ease),border-color .2s var(--ease);
}
.page-contact .breadcrumbs a:hover{color:var(--lime);border-bottom-color:var(--line-lime);}
.page-contact .breadcrumbs [aria-current]{color:var(--ivory);}
.page-contact .crumb-sep{color:rgba(143,184,168,.5);}

/* ---------- 章节抬头 ---------- */
.page-contact .eyebrow{
  margin:0 0 10px;
  font-family:var(--font-mono);
  font-size:12px;
  letter-spacing:.14em;
  color:var(--lime);
}
.page-contact .section-title{
  font-family:var(--font-display);
  font-weight:800;
  font-size:clamp(26px,4.6vw,46px);
  line-height:1.08;
  letter-spacing:-.01em;
  margin:0;
  color:var(--ivory);
}
.page-contact .section-note{
  margin:14px 0 0;
  max-width:54ch;
  font-size:clamp(15px,1.6vw,16.5px);
  line-height:1.8;
  color:rgba(243,240,230,.72);
}
.page-contact .section-head{margin-bottom:clamp(24px,4vw,44px);}

/* ---------- 首屏 ---------- */
.page-contact .hero-contact{
  position:relative;
  padding:clamp(22px,4vw,44px) 0 clamp(38px,7vw,80px);
  background:
    radial-gradient(120% 90% at 88% -12%,rgba(255,122,26,.16),transparent 58%),
    radial-gradient(95% 80% at 0% 0%,rgba(200,255,61,.10),transparent 62%);
}
.page-contact .hero-contact::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background-image:repeating-linear-gradient(115deg,rgba(143,184,168,.07) 0 1px,transparent 1px 46px);
  opacity:.55;
}
.page-contact .hero-grid{
  position:relative;
  display:grid;
  gap:clamp(26px,4vw,46px);
  align-items:start;
}
.page-contact .hero-contact h1{
  font-family:var(--font-display);
  font-weight:800;
  font-size:clamp(38px,9vw,84px);
  line-height:.98;
  letter-spacing:-.02em;
  margin:0;
  color:var(--ivory);
}
.page-contact .hero-contact h1 .hl{
  color:var(--lime);
  box-shadow:inset 0 -0.14em 0 rgba(200,255,61,.28);
}
.page-contact .hero-lead{
  margin:clamp(16px,2.6vw,24px) 0 0;
  max-width:52ch;
  font-size:clamp(15px,1.7vw,17.5px);
  line-height:1.85;
  color:rgba(243,240,230,.76);
}
.page-contact .hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:clamp(22px,3vw,32px);
}
.page-contact .hero-actions .btn{flex:0 1 auto;}

.page-contact .hero-side{position:relative;padding-bottom:24px;}
.page-contact .hero-figure{
  margin:0;
  border-radius:var(--r-xl);
  border:1px solid var(--line);
  overflow:hidden;
  aspect-ratio:4/3;
  background:
    radial-gradient(80% 70% at 70% 20%,rgba(200,255,61,.16),transparent 60%),
    linear-gradient(160deg,var(--stone),var(--night-deep));
  box-shadow:var(--shadow-card);
}
.page-contact .hero-figure img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.page-contact .hero-badge{
  position:absolute;
  left:14px;
  bottom:0;
  margin:0;
}
.page-contact .status-pill{
  display:inline-flex;
  align-items:center;
  gap:9px;
  padding:9px 16px;
  border-radius:var(--r-pill);
  border:1px solid var(--line-lime);
  background:var(--night-deep);
  font-family:var(--font-mono);
  font-size:11.5px;
  letter-spacing:.08em;
  color:var(--ivory);
}
.page-contact .status-dot{
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--lime);
  box-shadow:0 0 0 3px rgba(200,255,61,.18);
  animation:pc-pulse 2.6s var(--ease) infinite;
}
@keyframes pc-pulse{
  0%,100%{opacity:1;transform:scale(1);}
  50%{opacity:.55;transform:scale(.82);}
}

/* ---------- 三个入口 ---------- */
.page-contact .desk-section{padding-top:clamp(10px,2vw,20px);}
.page-contact .desk-grid{
  display:grid;
  gap:14px;
}
.page-contact .desk-card{
  position:relative;
  display:flex;
  flex-direction:column;
  gap:10px;
  padding:clamp(18px,3vw,30px);
  border:1px solid var(--line);
  border-radius:var(--r-lg);
  background:linear-gradient(158deg,var(--stone),var(--moss) 72%);
  overflow:hidden;
  transition:transform .25s var(--ease),border-color .25s var(--ease);
}
.page-contact .desk-card:hover{
  transform:translateY(-3px);
  border-color:var(--line-lime);
}
.page-contact .desk-card--phone{
  background:linear-gradient(140deg,rgba(255,122,26,.16),var(--stone) 46%,var(--moss));
}
.page-contact .desk-card--phone::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:4px;
  background:var(--orange);
}
.page-contact .desk-label{
  margin:0;
  font-family:var(--font-mono);
  font-size:11.5px;
  font-weight:500;
  letter-spacing:.1em;
  color:var(--mist);
}
.page-contact .desk-value{
  margin:0;
  font-family:var(--font-mono);
  font-weight:700;
  font-size:clamp(16px,3.4vw,25px);
  line-height:1.25;
  color:var(--ivory);
  overflow-wrap:anywhere;
}
.page-contact .desk-value--phone{
  font-size:clamp(32px,8.4vw,72px);
  line-height:1;
  letter-spacing:-.01em;
  color:var(--lime);
}
.page-contact .desk-meta{
  margin:0;
  font-size:14px;
  line-height:1.75;
  color:rgba(243,240,230,.66);
}
.page-contact .copy-btn{
  align-self:flex-start;
  margin-top:4px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:9px 18px;
  border-radius:var(--r-pill);
  border:1px solid var(--line-lime);
  background:rgba(200,255,61,.08);
  color:var(--lime);
  font-family:var(--font-mono);
  font-size:12px;
  letter-spacing:.08em;
  cursor:pointer;
  transition:transform .2s var(--ease),background .2s var(--ease),color .2s var(--ease),border-color .2s var(--ease);
}
.page-contact .copy-btn:hover{
  transform:translateY(-2px);
  background:rgba(200,255,61,.18);
}
.page-contact .copy-btn:focus-visible{
  outline:2px solid var(--lime);
  outline-offset:3px;
}
.page-contact .copy-btn.is-copied{
  background:var(--lime);
  border-color:var(--lime);
  color:var(--night-deep);
}

/* ---------- 按问题选渠道 ---------- */
.page-contact .channels-section{
  padding:clamp(40px,7vw,88px) 0;
  background:linear-gradient(180deg,transparent,rgba(14,42,34,.72) 22%,rgba(14,42,34,.72) 78%,transparent);
}
.page-contact .channels-layout{
  display:grid;
  gap:clamp(22px,4vw,40px);
  align-items:start;
}
.page-contact .ch-switch{position:relative;}
.page-contact .ch-switch input{
  position:absolute;
  width:1px;
  height:1px;
  opacity:0;
  pointer-events:none;
}
.page-contact .ch-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:16px;
}
.page-contact .ch-tabs label{
  display:inline-flex;
  align-items:center;
  padding:10px 18px;
  border-radius:var(--r-pill);
  border:1px solid var(--line);
  background:rgba(28,58,48,.52);
  color:rgba(243,240,230,.78);
  font-family:var(--font-mono);
  font-size:12.5px;
  letter-spacing:.06em;
  cursor:pointer;
  transition:background .22s var(--ease),color .22s var(--ease),border-color .22s var(--ease),transform .22s var(--ease);
}
.page-contact .ch-tabs label:hover{
  transform:translateY(-2px);
  border-color:var(--line-lime);
  color:var(--ivory);
}
.page-contact #chMember:checked ~ .ch-tabs label[for="chMember"],
.page-contact #chData:checked ~ .ch-tabs label[for="chData"],
.page-contact #chMedia:checked ~ .ch-tabs label[for="chMedia"],
.page-contact #chCity:checked ~ .ch-tabs label[for="chCity"]{
  background:var(--lime);
  border-color:var(--lime);
  color:var(--night-deep);
}
.page-contact #chMember:focus-visible ~ .ch-tabs label[for="chMember"],
.page-contact #chData:focus-visible ~ .ch-tabs label[for="chData"],
.page-contact #chMedia:focus-visible ~ .ch-tabs label[for="chMedia"],
.page-contact #chCity:focus-visible ~ .ch-tabs label[for="chCity"]{
  outline:2px solid var(--lime);
  outline-offset:3px;
}
.page-contact .ch-pane{
  display:none;
  padding:clamp(20px,3.2vw,34px);
  border:1px solid var(--line);
  border-radius:var(--r-lg);
  background:rgba(28,58,48,.6);
  box-shadow:var(--shadow-card);
}
.page-contact #chMember:checked ~ .ch-panes .pane-member,
.page-contact #chData:checked ~ .ch-panes .pane-data,
.page-contact #chMedia:checked ~ .ch-panes .pane-media,
.page-contact #chCity:checked ~ .ch-panes .pane-city{
  display:block;
  animation:pc-fade .32s var(--ease);
}
@keyframes pc-fade{
  from{opacity:0;transform:translateY(8px);}
  to{opacity:1;transform:none;}
}
.page-contact .pane-kicker{
  margin:0;
  font-family:var(--font-mono);
  font-size:11.5px;
  letter-spacing:.12em;
  color:var(--orange);
}
.page-contact .pane-title{
  margin:10px 0 0;
  font-family:var(--font-display);
  font-weight:700;
  font-size:clamp(20px,3vw,28px);
  line-height:1.24;
  color:var(--ivory);
}
.page-contact .pane-text{
  margin:12px 0 0;
  font-size:15.5px;
  line-height:1.85;
  color:rgba(243,240,230,.76);
}
.page-contact .pane-list{
  list-style:none;
  margin:18px 0 0;
  padding:0;
  display:grid;
  gap:9px;
}
.page-contact .pane-list li{
  position:relative;
  padding-left:20px;
  font-size:14.5px;
  line-height:1.7;
  color:rgba(243,240,230,.82);
}
.page-contact .pane-list li::before{
  content:"";
  position:absolute;
  left:2px;
  top:.62em;
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--lime);
  box-shadow:0 0 0 3px rgba(200,255,61,.14);
}
.page-contact .pane-channel{
  margin:20px 0 0;
  padding-top:14px;
  border-top:1px dashed var(--line);
  font-family:var(--font-mono);
  font-size:12.5px;
  line-height:1.8;
  color:var(--ivory);
  overflow-wrap:anywhere;
}
.page-contact .pane-channel-label{
  display:inline-block;
  margin-right:10px;
  padding:3px 10px;
  border-radius:var(--r-pill);
  background:rgba(255,122,26,.18);
  color:var(--orange);
  font-size:11px;
  letter-spacing:.1em;
}
.page-contact .channels-figure{
  margin:0;
  border-radius:var(--r-lg);
  border:1px solid var(--line);
  overflow:hidden;
  aspect-ratio:10/7;
  background:
    linear-gradient(150deg,rgba(200,255,61,.12),rgba(255,122,26,.10) 55%,rgba(4,17,13,.9)),
    var(--stone);
}
.page-contact .channels-figure img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}

/* ---------- 反馈前准备 ---------- */
.page-contact .prepare-section{padding:clamp(36px,6vw,84px) 0;}
.page-contact .prepare-grid{
  display:grid;
  gap:clamp(22px,4vw,44px);
  align-items:start;
}
.page-contact .prep-list{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:12px;
}
.page-contact .prep-item{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:14px;
  padding:16px 18px;
  border-left:2px solid var(--line-lime);
  border-radius:0 var(--r-md) var(--r-md) 0;
  background:rgba(28,58,48,.42);
  transition:background .22s var(--ease),border-color .22s var(--ease);
}
.page-contact .prep-item:hover{
  background:rgba(28,58,48,.78);
  border-left-color:var(--lime);
}
.page-contact .prep-num{
  font-family:var(--font-mono);
  font-size:13px;
  font-weight:600;
  line-height:1.7;
  color:var(--lime);
}
.page-contact .prep-text{
  font-size:14.5px;
  line-height:1.78;
  color:rgba(243,240,230,.82);
}

/* ---------- 合作与社群 ---------- */
.page-contact .partner-section{
  padding:clamp(30px,5vw,76px) 0;
}
.page-contact .partner-grid{
  display:grid;
  gap:clamp(22px,4vw,44px);
  align-items:start;
  padding:clamp(22px,4vw,44px);
  border:1px solid var(--line);
  border-radius:var(--r-xl);
  background:
    radial-gradient(90% 120% at 100% 0%,rgba(255,122,26,.14),transparent 60%),
    linear-gradient(150deg,var(--moss),var(--night-deep));
}
.page-contact .partner-text{
  margin:16px 0 0;
  font-size:15.5px;
  line-height:1.85;
  color:rgba(243,240,230,.76);
  overflow-wrap:anywhere;
}
.page-contact .partner-side-title{
  margin:0 0 14px;
  font-family:var(--font-mono);
  font-size:11.5px;
  letter-spacing:.12em;
  color:var(--amber);
}
.page-contact .partner-list{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:10px;
}
.page-contact .partner-list li{
  position:relative;
  padding-left:18px;
  font-size:14.5px;
  line-height:1.72;
  color:rgba(243,240,230,.82);
}
.page-contact .partner-list li::before{
  content:"";
  position:absolute;
  left:0;
  top:.68em;
  width:9px;
  height:2px;
  background:var(--amber);
}

/* ---------- 联系信息数据带 ---------- */
.page-contact .contact-band{
  position:relative;
  margin-top:clamp(28px,5vw,64px);
  padding:clamp(34px,7vw,72px) 0;
  background:linear-gradient(118deg,var(--moss),var(--stone) 62%,rgba(4,17,13,.95));
}
.page-contact .contact-band::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:2px;
  background:linear-gradient(90deg,transparent,var(--lime),transparent);
  opacity:.6;
}
.page-contact .band-head .section-title{font-size:clamp(24px,4vw,38px);}
.page-contact .band-list{
  margin:clamp(20px,3vw,34px) 0 0;
  display:grid;
  gap:16px;
}
.page-contact .band-item{
  padding-bottom:14px;
  border-bottom:1px solid var(--line-soft);
}
.page-contact .band-item dt{
  font-family:var(--font-mono);
  font-size:11.5px;
  letter-spacing:.12em;
  color:var(--mist);
  margin-bottom:6px;
}
.page-contact .band-item dd{
  margin:0;
  font-size:15.5px;
  line-height:1.7;
  color:var(--ivory);
  overflow-wrap:anywhere;
}
.page-contact .band-note{
  margin:clamp(18px,3vw,26px) 0 0;
  font-size:14px;
  line-height:1.75;
  color:var(--mist);
}

/* ---------- 收尾链接 ---------- */
.page-contact .closing-section{padding:clamp(36px,6vw,80px) 0 clamp(44px,7vw,90px);}
.page-contact .closing-title{font-size:clamp(22px,3.4vw,32px);}
.page-contact .closing-links{
  list-style:none;
  margin:clamp(18px,3vw,28px) 0 0;
  padding:0;
  display:grid;
  gap:10px;
}
.page-contact .closing-link{
  display:flex;
  flex-direction:column;
  gap:6px;
  padding:16px 18px;
  border:1px solid var(--line);
  border-radius:var(--r-md);
  background:rgba(14,42,34,.6);
  text-decoration:none;
  transition:transform .22s var(--ease),border-color .22s var(--ease),background .22s var(--ease);
}
.page-contact .closing-link:hover{
  transform:translateY(-2px);
  border-color:var(--line-lime);
  background:rgba(28,58,48,.9);
}
.page-contact .closing-link-name{
  font-family:var(--font-display);
  font-weight:700;
  font-size:17px;
  color:var(--lime);
}
.page-contact .closing-link-note{
  font-size:13.5px;
  line-height:1.65;
  color:rgba(243,240,230,.68);
}

/* ---------- 悬浮章节索引 ---------- */
.page-contact .chapter-rail{display:none;}

/* ---------- 响应式 ---------- */
@media (min-width:600px){
  .page-contact .band-list{grid-template-columns:repeat(2,1fr);gap:22px 28px;}
  .page-contact .closing-links{grid-template-columns:repeat(2,1fr);}
}

@media (min-width:900px){
  .page-contact .hero-grid{grid-template-columns:7fr 5fr;align-items:end;}
  .page-contact .hero-side{padding-bottom:0;}
  .page-contact .hero-badge{left:auto;right:0;bottom:-18px;}
  .page-contact .hero-figure{aspect-ratio:16/11;}
  .page-contact .desk-grid{
    grid-template-columns:1.15fr .85fr;
    grid-template-areas:
      "phone phone"
      "mail1 mail2";
  }
  .page-contact .desk-card--phone{grid-area:phone;}
  .page-contact .desk-card--mail1{grid-area:mail1;}
  .page-contact .desk-card--mail2{grid-area:mail2;}
  .page-contact .prepare-grid{grid-template-columns:5fr 7fr;}
  .page-contact .partner-grid{grid-template-columns:7fr 5fr;}
}

@media (min-width:960px){
  .page-contact .channels-layout{grid-template-columns:7fr 5fr;}
  .page-contact .channels-figure{position:sticky;top:120px;}
}

@media (min-width:1200px){
  .page-contact .contact-band{
    clip-path:polygon(0 5%,100% 0,100% 95%,0 100%);
    padding:clamp(70px,8vw,110px) 0;
  }
  .page-contact .band-list{grid-template-columns:repeat(4,1fr);}
  .page-contact .band-item{border-bottom:none;border-left:1px solid var(--line);padding:0 0 0 18px;}
  .page-contact .band-item:first-child{border-left:none;padding-left:0;}
}

@media (min-width:1440px){
  .page-contact .chapter-rail{
    display:block;
    position:fixed;
    left:26px;
    top:50%;
    transform:translateY(-50%);
    z-index:5;
    width:132px;
  }
  .page-contact .chapter-list{
    list-style:none;
    margin:0;
    padding:0;
    display:grid;
    gap:12px;
  }
  .page-contact .chapter-link{
    display:block;
    font-family:var(--font-mono);
    font-size:11px;
    line-height:1.5;
    letter-spacing:.06em;
    color:rgba(143,184,168,.62);
    text-decoration:none;
    padding-left:10px;
    border-left:1px solid var(--line);
    transition:color .22s var(--ease),border-color .22s var(--ease);
  }
  .page-contact .chapter-num{
    display:block;
    font-size:10px;
    color:rgba(143,184,168,.42);
    margin-bottom:2px;
  }
  .page-contact .chapter-link:hover,
  .page-contact .chapter-link.is-active{
    color:var(--lime);
    border-left-color:var(--lime);
  }
  .page-contact .chapter-link.is-active .chapter-num{color:var(--lime);}
}

@media (prefers-reduced-motion:reduce){
  .page-contact *,
  .page-contact *::before,
  .page-contact *::after{
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.001ms !important;
  }
}
