.page-contact{
  --co-body:#B7C6DC;
  --co-panel:#0E1B2E;
  background:var(--ink);
  color:var(--fog);
  font-family:var(--font-body);
  overflow-x:clip;
}
.page-contact p{margin:0 0 1em;}
.page-contact p:last-child{margin-bottom:0;}
.page-contact h1,.page-contact h2,.page-contact h3{margin:0;}

/* ---------- 顶部上下文 ---------- */
.page-contact .co-topbar{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:8px 20px;
  padding-block:16px 12px;
  border-bottom:1px solid var(--line);
}
.page-contact .co-topbar-note{
  font-size:11px;
  letter-spacing:.16em;
  color:var(--mute);
  text-transform:uppercase;
}

/* ---------- 首屏 ---------- */
.page-contact .co-hero{
  position:relative;
  width:100%;
  max-width:var(--shell);
  margin-inline:auto;
  padding:clamp(28px,5vw,64px) var(--gutter) clamp(26px,4vw,52px);
  display:grid;
  gap:clamp(28px,4vw,44px);
}
.page-contact .co-hero::before{
  content:"";
  position:absolute;
  inset:0 var(--gutter) auto 0;
  height:1px;
  background:linear-gradient(90deg,var(--volt),transparent 62%);
  opacity:.55;
  pointer-events:none;
}
.page-contact .co-hero-copy{position:relative;}
.page-contact .co-hero h1{
  font-family:var(--font-display);
  font-weight:900;
  font-size:clamp(38px,8.6vw,100px);
  line-height:.94;
  letter-spacing:-.04em;
  margin:.26em 0 .34em;
}
.page-contact .co-accent{
  color:var(--volt);
  display:inline-block;
  position:relative;
}
.page-contact .co-accent::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-.08em;
  height:.06em;
  background:var(--flame);
}
.page-contact .co-lede{
  max-width:42ch;
  font-size:clamp(15px,1.7vw,17px);
  line-height:1.8;
  color:var(--co-body);
}
.page-contact .co-hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:26px;
}
.page-contact .co-hero-media{
  position:relative;
  align-self:stretch;
}
.page-contact .co-hero-media img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:16/10;
  object-fit:cover;
  border:1px solid var(--line);
  clip-path:polygon(0 0,100% 0,100% calc(100% - 44px),calc(100% - 44px) 100%,0 100%);
}
.page-contact .co-hero-badge{
  position:absolute;
  left:0;
  bottom:0;
  transform:translateY(34%);
  display:flex;
  align-items:baseline;
  gap:8px;
  background:var(--volt);
  color:#05080F;
  padding:10px 16px;
  font-size:12px;
  letter-spacing:.1em;
}
.page-contact .co-hero-badge .mono{
  font-size:24px;
  font-weight:700;
}

/* ---------- 概况条 ---------- */
.page-contact .co-stats{
  list-style:none;
  margin:0;
  padding:calc(clamp(18px,3vw,26px) + 12px) 0 0;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.page-contact .co-stat{
  padding:16px clamp(12px,2.5vw,26px) 20px;
  border-right:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.page-contact .co-stat:nth-child(2n){border-right:none;}
.page-contact .co-stat:nth-last-child(-n+2){border-bottom:none;}
.page-contact .co-stat-num{
  display:block;
  font-size:clamp(26px,4vw,36px);
  font-weight:700;
  color:var(--volt);
  line-height:1;
  letter-spacing:-.02em;
}
.page-contact .co-stat-unit{
  font-size:.5em;
  margin-left:.15em;
  color:var(--fog);
}
.page-contact .co-stat-label{
  display:block;
  margin-top:8px;
  font-size:12px;
  letter-spacing:.1em;
  color:var(--mute);
}

/* ---------- 通用区块 ---------- */
.page-contact .co-section{
  padding-block:clamp(48px,7vw,96px);
}
.page-contact .co-sec-head{
  max-width:62ch;
  margin-bottom:clamp(24px,4vw,40px);
}
.page-contact .co-sec-head h2{
  font-family:var(--font-display);
  font-size:clamp(27px,4.6vw,52px);
  line-height:1.04;
  letter-spacing:-.03em;
  margin:.22em 0 .4em;
}
.page-contact .co-sec-lede{
  color:var(--co-body);
  font-size:clamp(15px,1.7vw,17px);
  line-height:1.78;
  max-width:52ch;
}
.page-contact .co-textlink{
  color:var(--cyan);
  text-decoration:none;
  border-bottom:1px solid rgba(50,230,200,.4);
  transition:color var(--dur) var(--ease),border-color var(--dur) var(--ease);
}
.page-contact .co-textlink:hover{
  color:var(--volt);
  border-color:var(--volt);
}

/* ---------- 合作类型 ---------- */
.page-contact .co-rail{
  list-style:none;
  display:flex;
  gap:8px;
  margin:0 0 clamp(20px,3vw,30px);
  padding:0 0 6px;
  overflow-x:auto;
  scrollbar-width:thin;
}
.page-contact .co-rail a{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:10px 16px;
  border:1px solid var(--line);
  color:var(--fog);
  text-decoration:none;
  font-size:13px;
  letter-spacing:.04em;
  white-space:nowrap;
  transition:border-color var(--dur) var(--ease),color var(--dur) var(--ease),background var(--dur) var(--ease);
}
.page-contact .co-rail a:hover,
.page-contact .co-rail a:focus-visible{
  border-color:var(--volt);
  color:var(--volt);
  background:rgba(198,255,61,.06);
}
.page-contact .co-rail .mono{
  font-size:11px;
  color:var(--flame);
}
.page-contact .co-type-grid{
  display:grid;
  gap:1px;
  background:var(--line);
  border:1px solid var(--line);
}
.page-contact .co-type{
  background:var(--ink-2);
  padding:clamp(20px,3vw,32px);
  position:relative;
  transition:transform var(--dur) var(--ease),background var(--dur) var(--ease);
}
.page-contact .co-type:hover{
  background:var(--co-panel);
  transform:translateY(-3px);
}
.page-contact .co-type-num{
  font-size:11px;
  letter-spacing:.2em;
  color:var(--flame);
  margin:0 0 16px;
}
.page-contact .co-type h3{
  font-size:clamp(20px,2.5vw,26px);
  font-weight:800;
  line-height:1.2;
  letter-spacing:-.01em;
  margin-bottom:12px;
}
.page-contact .co-type > p:not(.co-type-num){
  color:var(--co-body);
  line-height:1.75;
  font-size:15px;
}
.page-contact .co-type-detail{
  margin-top:18px;
  border-top:1px solid var(--line);
  padding-top:14px;
}
.page-contact .co-type-detail summary{
  display:flex;
  align-items:center;
  gap:12px;
  cursor:pointer;
  list-style:none;
  font-size:11px;
  letter-spacing:.16em;
  color:var(--volt);
  text-transform:uppercase;
}
.page-contact .co-type-detail summary::-webkit-details-marker{display:none;}
.page-contact .co-type-detail summary::after{
  content:"+";
  margin-left:auto;
  font-size:16px;
  line-height:1;
  color:var(--mute);
}
.page-contact .co-type-detail[open] summary::after{content:"–";color:var(--volt);}
.page-contact .co-type-detail dl{
  margin:14px 0 0;
  display:grid;
  gap:10px;
}
.page-contact .co-type-detail dt{
  font-size:11px;
  letter-spacing:.14em;
  color:var(--mute);
  margin-bottom:4px;
}
.page-contact .co-type-detail dd{
  margin:0;
  font-size:14px;
  line-height:1.7;
  color:var(--co-body);
}
.page-contact .co-types-figure{
  margin:clamp(22px,4vw,38px) 0 0;
  border:1px solid var(--line);
  background:var(--ink-2);
}
.page-contact .co-types-figure img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:14/9;
  object-fit:cover;
}
.page-contact .co-types-figure figcaption{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px 14px;
  padding:16px clamp(16px,2.5vw,24px);
  font-size:13.5px;
  line-height:1.7;
  color:var(--mute);
  border-top:1px solid var(--line);
}

/* ---------- 流程 ---------- */
.page-contact .co-flow-line{
  height:52px;
  margin-bottom:clamp(18px,3vw,26px);
  display:none;
}
.page-contact .co-flow-line svg{
  display:block;
  width:100%;
  height:100%;
}
.page-contact .co-steps{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:1px;
  background:var(--line);
  border:1px solid var(--line);
}
.page-contact .co-steps li{
  background:var(--ink);
  padding:22px 20px 26px;
  border-top:2px solid transparent;
  transition:border-color var(--dur) var(--ease),background var(--dur) var(--ease);
}
.page-contact .co-steps li:hover,
.page-contact .co-steps li:focus-within{
  border-top-color:var(--volt);
  background:var(--ink-2);
}
.page-contact .co-steps .mono{
  display:block;
  font-size:13px;
  letter-spacing:.2em;
  color:var(--volt);
  margin-bottom:12px;
}
.page-contact .co-steps h3{
  font-size:18px;
  font-weight:800;
  margin-bottom:10px;
}
.page-contact .co-steps p{
  font-size:14px;
  line-height:1.75;
  color:var(--co-body);
}

/* ---------- 产能 ---------- */
.page-contact .co-power{
  border-top:1px solid var(--line);
  background:linear-gradient(180deg,rgba(11,22,38,.9),rgba(5,8,15,1) 72%);
}
.page-contact .co-power-inner{
  display:grid;
  gap:clamp(26px,4vw,52px);
}
.page-contact .co-power-copy h2{
  font-family:var(--font-display);
  font-size:clamp(27px,4.4vw,50px);
  line-height:1.05;
  letter-spacing:-.03em;
  margin:.22em 0 .4em;
}
.page-contact .co-power-copy p{
  color:var(--co-body);
  line-height:1.8;
  max-width:46ch;
}
.page-contact .co-power-list{
  list-style:none;
  margin:0;
  padding:0;
  border-top:1px solid var(--line);
}
.page-contact .co-power-list li{
  display:grid;
  gap:4px 16px;
  padding:16px 0;
  border-bottom:1px solid var(--line);
}
.page-contact .co-power-label{
  font-size:11px;
  letter-spacing:.16em;
  color:var(--mute);
  text-transform:uppercase;
}
.page-contact .co-power-value{
  font-size:clamp(20px,3vw,26px);
  font-weight:700;
  color:var(--fog);
  letter-spacing:-.01em;
}
.page-contact .co-power-note{
  grid-column:1 / -1;
  font-size:13.5px;
  line-height:1.7;
  color:var(--co-body);
}

/* ---------- 联系 ---------- */
.page-contact .co-contact{
  border-top:1px solid var(--line);
  background:
    radial-gradient(circle at 88% 12%,rgba(255,122,26,.14),transparent 46%),
    var(--ink);
}
.page-contact .co-contact-inner{
  display:grid;
  gap:clamp(26px,4vw,48px);
  align-items:start;
}
.page-contact .co-contact-copy h2{
  font-family:var(--font-display);
  font-size:clamp(27px,4.4vw,52px);
  line-height:1.04;
  letter-spacing:-.03em;
  margin:.22em 0 .44em;
}
.page-contact .co-contact-copy p{
  color:var(--co-body);
  line-height:1.8;
  max-width:48ch;
}
.page-contact .co-contact-footnote{
  font-size:13px;
  color:var(--mute);
  border-left:2px solid var(--flame);
  padding-left:14px;
  margin-top:20px;
}
.page-contact .co-card{
  position:relative;
  background:var(--ink-2);
  border:1px solid var(--line);
  padding:clamp(20px,3vw,28px);
}
.page-contact .co-card::before{
  content:"";
  position:absolute;
  top:-1px;
  left:-1px;
  width:72px;
  height:3px;
  background:var(--volt);
}
.page-contact .co-card-tag{
  font-size:11px;
  letter-spacing:.2em;
  color:var(--flame);
  margin:0 0 18px;
}
.page-contact .co-card-list{
  margin:0;
  display:grid;
  gap:14px;
}
.page-contact .co-card-list > div{
  border-top:1px solid var(--line);
  padding-top:12px;
}
.page-contact .co-card-list dt{
  font-size:11px;
  letter-spacing:.14em;
  color:var(--mute);
  margin-bottom:6px;
}
.page-contact .co-card-list dd{
  margin:0;
  font-size:15px;
  line-height:1.6;
  color:var(--fog);
  word-break:break-word;
}
.page-contact .co-card-list dd.mono{
  font-size:16px;
  letter-spacing:-.01em;
}
.page-contact .co-card-addr{
  font-size:14px;
  line-height:1.7;
  color:var(--co-body);
}
.page-contact .co-card-note{
  margin-top:18px;
  padding-top:14px;
  border-top:1px dashed var(--line);
  font-size:12.5px;
  line-height:1.75;
  color:var(--mute);
}

/* ---------- 问答 ---------- */
.page-contact .co-faq-inner{
  display:grid;
  gap:clamp(18px,3vw,32px);
}
.page-contact .co-faq-list{
  border-top:1px solid var(--line);
}
.page-contact .co-faq-item{
  border-bottom:1px solid var(--line);
}
.page-contact .co-faq-item summary{
  display:flex;
  align-items:baseline;
  gap:14px;
  padding:18px 0;
  cursor:pointer;
  list-style:none;
  transition:color var(--dur) var(--ease);
}
.page-contact .co-faq-item summary::-webkit-details-marker{display:none;}
.page-contact .co-faq-num{
  font-size:12px;
  color:var(--flame);
  letter-spacing:.14em;
  flex:none;
}
.page-contact .co-faq-q{
  font-size:clamp(15px,2vw,18px);
  font-weight:700;
  line-height:1.5;
}
.page-contact .co-faq-item summary:hover .co-faq-q{color:var(--volt);}
.page-contact .co-faq-item summary::after{
  content:"+";
  margin-left:auto;
  color:var(--mute);
  font-size:18px;
  line-height:1;
  flex:none;
}
.page-contact .co-faq-item[open] summary::after{content:"–";color:var(--volt);}
.page-contact .co-faq-item p{
  padding:0 0 20px 34px;
  font-size:14.5px;
  line-height:1.8;
  color:var(--co-body);
  max-width:62ch;
}

/* ---------- 继续了解 ---------- */
.page-contact .co-more{
  border-top:1px solid var(--line);
  padding-block:clamp(30px,5vw,56px);
}
.page-contact .co-more-title{
  font-size:11px;
  letter-spacing:.2em;
  color:var(--mute);
  margin:0 0 18px;
}
.page-contact .co-more-list{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:1px;
  background:var(--line);
  border:1px solid var(--line);
}
.page-contact .co-more-list a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:14px 16px;
  background:var(--ink);
  color:var(--fog);
  text-decoration:none;
  font-size:14px;
  transition:background var(--dur) var(--ease),color var(--dur) var(--ease);
}
.page-contact .co-more-list a:hover,
.page-contact .co-more-list a:focus-visible{
  background:var(--ink-2);
  color:var(--volt);
}
.page-contact .co-more-num{
  font-size:12px;
  color:var(--mute);
}
.page-contact .co-more-list a:hover .co-more-num{color:var(--volt);}

/* ---------- 断点 ---------- */
@media (min-width:680px){
  .page-contact .co-stats{grid-template-columns:repeat(4,minmax(0,1fr));}
  .page-contact .co-stat{border-bottom:none;}
  .page-contact .co-stat:nth-child(2n){border-right:1px solid var(--line);}
  .page-contact .co-stat:last-child{border-right:none;}
  .page-contact .co-type-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .page-contact .co-more-list{grid-template-columns:repeat(2,minmax(0,1fr));}
}

@media (min-width:860px){
  .page-contact .co-flow-line{display:block;}
  .page-contact .co-steps{grid-template-columns:repeat(4,minmax(0,1fr));}
  .page-contact .co-power-list li{
    grid-template-columns:minmax(120px,180px) minmax(0,1fr);
    align-items:baseline;
  }
  .page-contact .co-power-value{text-align:right;}
  .page-contact .co-power-note{grid-column:2;}
}

@media (min-width:1000px){
  .page-contact .co-hero{
    grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
    align-items:center;
  }
  .page-contact .co-hero-copy{padding-right:clamp(0px,2vw,28px);}
  .page-contact .co-power-inner{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);}
  .page-contact .co-contact-inner{grid-template-columns:minmax(0,1fr) minmax(320px,400px);}
  .page-contact .co-card{position:sticky;top:96px;}
  .page-contact .co-faq-inner{grid-template-columns:minmax(0,.6fr) minmax(0,1.4fr);align-items:start;}
  .page-contact .co-faq-inner .co-sec-head{margin-bottom:0;}
  .page-contact .co-more-list{grid-template-columns:repeat(5,minmax(0,1fr));}
}

@media (prefers-reduced-motion:reduce){
  .page-contact *{transition:none !important;}
}
