.page-contact{
  --ink:#0B1330;
  --ink-soft:#41506F;
  --panel-line:#D5DCEB;
  --cyan-deep:#0A8C7B;
  background:var(--void);
  color:var(--stardust);
}

.page-contact .crumb{padding-top:var(--sp-3);}
.page-contact .breadcrumb__current{color:var(--stardust);}

.page-contact .section{padding:var(--sp-6) 0;}
@media (min-width:900px){
  .page-contact .section{padding:var(--sp-7) 0;}
}

.page-contact h2{
  margin:0;
  font-family:var(--font-head);
  font-weight:800;
  font-size:clamp(1.55rem,3.6vw,2.4rem);
  line-height:1.2;
  letter-spacing:-.01em;
  color:inherit;
}
.page-contact h3{
  margin:0;
  font-family:var(--font-head);
  font-weight:700;
  font-size:1.05rem;
  line-height:1.45;
}

/* ---------- 首屏 ---------- */
.page-contact .contact-hero{
  position:relative;
  overflow:hidden;
  padding:var(--sp-5) 0 var(--sp-6);
  border-bottom:1px solid var(--line);
}
@media (min-width:900px){
  .page-contact .contact-hero{padding:var(--sp-6) 0 var(--sp-7);}
}
.page-contact .contact-hero::before{
  content:"";
  position:absolute;
  top:-6%;
  right:-14%;
  width:min(720px,82vw);
  height:1px;
  background:linear-gradient(90deg,transparent,var(--cyan),transparent);
  transform:rotate(-30deg);
  opacity:.55;
  pointer-events:none;
}
.page-contact .contact-hero::after{
  content:"";
  position:absolute;
  left:-10%;
  bottom:12%;
  width:min(520px,70vw);
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(53,240,208,.45),transparent);
  transform:rotate(-30deg);
  pointer-events:none;
}
.page-contact .contact-hero__inner{
  position:relative;
  display:grid;
  gap:var(--sp-5);
}
@media (min-width:900px){
  .page-contact .contact-hero__inner{
    grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);
    gap:var(--sp-6);
    align-items:start;
  }
}
.page-contact .contact-hero__text{min-width:0;}
.page-contact .contact-hero h1{
  margin:var(--sp-2) 0 0;
  font-family:var(--font-head);
  font-weight:800;
  font-size:clamp(2rem,6.4vw,4rem);
  line-height:1.08;
  letter-spacing:-.02em;
  color:var(--stardust);
  text-wrap:balance;
}
.page-contact .contact-hero__lead{
  margin:var(--sp-3) 0 0;
  max-width:38em;
  font-size:1rem;
  line-height:1.9;
  color:var(--mist);
}
@media (min-width:900px){
  .page-contact .contact-hero__lead{font-size:1.05rem;}
}
.page-contact .contact-hero__actions{
  display:flex;
  flex-wrap:wrap;
  gap:var(--sp-2);
  margin-top:var(--sp-4);
}
.page-contact .hero-facts{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--sp-3);
  margin:var(--sp-5) 0 0;
  padding-top:var(--sp-3);
  border-top:1px solid var(--line);
}
.page-contact .hero-facts div{
  display:flex;
  flex-direction:column-reverse;
  gap:4px;
  min-width:0;
}
.page-contact .hero-facts dt{
  font-size:.76rem;
  line-height:1.5;
  color:var(--mist);
  letter-spacing:.02em;
}
.page-contact .hero-facts dd{
  margin:0;
  font-family:var(--font-mono);
  font-size:1.5rem;
  line-height:1.1;
  color:var(--stardust);
  font-variant-numeric:tabular-nums;
}
.page-contact .hero-facts dd span{
  margin-left:4px;
  font-family:var(--font-body);
  font-size:.78rem;
  color:var(--cyan);
}
.page-contact .contact-hero__figure{
  margin:var(--sp-5) 0 0;
  min-width:0;
}
@media (min-width:900px){
  .page-contact .contact-hero__figure{margin:0;}
}
.page-contact .contact-hero__figure img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:7 / 4;
  object-fit:cover;
  border:1px solid var(--line);
  filter:saturate(.92);
}
.page-contact .contact-hero__figure figcaption{
  margin-top:var(--sp-1);
  font-size:.76rem;
  letter-spacing:.02em;
  color:var(--mist);
}

/* ---------- 章节标题 ---------- */
.page-contact .coop-head{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:var(--sp-2) var(--sp-3);
  align-items:start;
  padding-top:var(--sp-3);
  border-top:1px solid var(--line);
  margin-bottom:var(--sp-5);
}
.page-contact .coop-head__num{
  font-size:1.6rem;
  line-height:1;
  color:var(--cyan);
  letter-spacing:.04em;
}
@media (min-width:900px){
  .page-contact .coop-head__num{font-size:2.1rem;}
}
.page-contact .coop-head__intro{
  margin:var(--sp-2) 0 0;
  max-width:36em;
  font-size:.95rem;
  line-height:1.8;
  color:var(--mist);
}

/* ---------- 四种合作方式 ---------- */
.page-contact .coop-grid{
  display:grid;
  gap:var(--sp-3);
  grid-template-columns:minmax(0,1fr);
}
@media (min-width:720px){
  .page-contact .coop-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (min-width:1080px){
  .page-contact .coop-grid{grid-template-columns:repeat(4,minmax(0,1fr));padding-bottom:var(--sp-3);}
  .page-contact .coop-card:nth-child(even){transform:translateY(24px);}
}
.page-contact .coop-card{
  position:relative;
  display:flex;
  flex-direction:column;
  gap:var(--sp-2);
  padding:var(--sp-3);
  background:var(--card);
  border:1px solid var(--line);
  min-width:0;
  transition:border-color .2s var(--ease),background-color .2s var(--ease);
}
.page-contact .coop-card::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  width:44px;
  height:1px;
  background:var(--cyan);
  opacity:.7;
}
.page-contact .coop-card:hover,
.page-contact .coop-card:focus-within{
  border-color:var(--cyan);
  background:#101B3E;
}
.page-contact .coop-card .badge{align-self:flex-start;}
.page-contact .coop-card dl{
  margin:0;
  display:grid;
  gap:var(--sp-2);
}
.page-contact .coop-card dt{
  margin-bottom:2px;
  font-family:var(--font-mono);
  font-size:.7rem;
  letter-spacing:.14em;
  color:var(--cyan);
}
.page-contact .coop-card dd{
  margin:0;
  font-size:.9rem;
  line-height:1.75;
  color:var(--mist);
}
.page-contact .coop-card__more{
  margin:0;
  max-height:0;
  overflow:hidden;
  opacity:0;
  padding-top:0;
  border-top:0 dashed var(--line);
  font-size:.82rem;
  line-height:1.7;
  color:var(--stardust);
  transition:max-height .3s var(--ease),opacity .25s var(--ease),padding-top .3s var(--ease);
}
.page-contact .coop-card:hover .coop-card__more,
.page-contact .coop-card:focus-within .coop-card__more{
  max-height:14em;
  opacity:1;
  padding-top:var(--sp-2);
  border-top-width:1px;
}
@media (hover:none){
  .page-contact .coop-card__more{
    max-height:none;
    opacity:1;
    padding-top:var(--sp-2);
    border-top-width:1px;
  }
}

/* ---------- 适合谁来谈 ---------- */
.page-contact .who-list{
  display:grid;
  gap:0;
}
.page-contact .who-row{
  display:grid;
  gap:var(--sp-1);
  padding:var(--sp-3) 0;
  border-top:1px solid var(--line);
  min-width:0;
}
.page-contact .who-list .who-row:last-child{border-bottom:1px solid var(--line);}
@media (min-width:900px){
  .page-contact .who-row{
    grid-template-columns:56px 180px minmax(0,1fr) 160px;
    align-items:baseline;
    gap:var(--sp-3);
    padding:var(--sp-4) 0;
  }
}
.page-contact .who-row__num{
  font-size:.85rem;
  letter-spacing:.14em;
  color:var(--cyan);
}
.page-contact .who-row__title{font-size:1.1rem;}
.page-contact .who-row__gain{
  margin:0;
  max-width:40em;
  font-size:.92rem;
  line-height:1.85;
  color:var(--mist);
}
.page-contact .who-row__link{
  justify-self:start;
  color:var(--stardust);
  font-size:.85rem;
  text-decoration:none;
  border-bottom:1px solid var(--line);
  padding-bottom:2px;
  transition:color .2s var(--ease),border-color .2s var(--ease);
}
.page-contact .who-row__link:hover,
.page-contact .who-row__link:focus-visible{
  color:var(--cyan);
  border-color:var(--cyan);
}

/* ---------- 四步流程 ---------- */
.page-contact .flow-list{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:var(--sp-4);
}
@media (min-width:900px){
  .page-contact .flow-list{
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:var(--sp-5);
  }
}
.page-contact .flow-step{
  position:relative;
  padding-top:var(--sp-3);
  border-top:1px solid var(--line);
  min-width:0;
}
.page-contact .flow-step__num{
  display:block;
  margin-bottom:var(--sp-2);
  font-size:1.4rem;
  line-height:1;
  letter-spacing:.06em;
  color:var(--amber);
}
.page-contact .flow-step h3{margin-bottom:var(--sp-2);}
.page-contact .flow-step p{
  margin:0;
  font-size:.9rem;
  line-height:1.85;
  color:var(--mist);
}
@media (min-width:900px){
  .page-contact .flow-step::after{
    content:"";
    position:absolute;
    top:10px;
    right:calc(-1 * var(--sp-5));
    width:var(--sp-5);
    height:1px;
    background:var(--line);
    transform:rotate(-30deg);
    transform-origin:left center;
    pointer-events:none;
  }
  .page-contact .flow-step:last-child::after{display:none;}
}
.page-contact .flow-figure{
  margin:var(--sp-5) 0 0;
}
.page-contact .flow-figure img{
  display:block;
  width:100%;
  height:auto;
  max-width:100%;
  aspect-ratio:2 / 1;
  object-fit:cover;
  border:1px solid var(--line);
}
.page-contact .flow-figure figcaption{
  margin-top:var(--sp-1);
  font-size:.76rem;
  color:var(--mist);
}

/* ---------- 对接节奏 ---------- */
.page-contact .table-wrap{
  overflow-x:auto;
  border:1px solid var(--line);
  background:var(--card);
}
.page-contact .data-table{
  width:100%;
  min-width:560px;
  border-collapse:collapse;
  font-size:.9rem;
}
.page-contact .data-table caption{
  caption-side:top;
  padding:var(--sp-2) var(--sp-3);
  text-align:left;
  font-family:var(--font-mono);
  font-size:.7rem;
  letter-spacing:.14em;
  color:var(--mist);
  border-bottom:1px solid var(--line);
}
.page-contact .data-table th{
  padding:var(--sp-2) var(--sp-3);
  text-align:left;
  font-family:var(--font-mono);
  font-size:.7rem;
  letter-spacing:.12em;
  color:var(--cyan);
  border-bottom:1px solid var(--line);
  white-space:nowrap;
}
.page-contact .data-table td{
  padding:var(--sp-2) var(--sp-3);
  border-bottom:1px solid var(--line);
  line-height:1.7;
  color:var(--mist);
  vertical-align:top;
}
.page-contact .data-table tbody tr:last-child td{border-bottom:0;}
.page-contact .data-table tbody tr:hover td{
  background:rgba(53,240,208,.06);
  color:var(--stardust);
}
.page-contact .timing-note{
  margin:var(--sp-3) 0 0;
  max-width:46em;
  font-size:.86rem;
  line-height:1.85;
  color:var(--mist);
}

/* ---------- 联系面板 ---------- */
.page-contact .channel-card{
  background:var(--lunar);
  color:var(--ink);
  border:1px solid var(--panel-line);
  padding:var(--sp-4) var(--sp-3);
}
@media (min-width:900px){
  .page-contact .channel-card{padding:var(--sp-5) var(--sp-5) var(--sp-4);}
}
.page-contact .channel-card .eyebrow{
  display:block;
  margin:0 0 var(--sp-2);
  font-family:var(--font-mono);
  font-size:.7rem;
  letter-spacing:.16em;
  color:var(--cyan-deep);
}
.page-contact .channel-card__lead{
  margin:var(--sp-2) 0 0;
  max-width:34em;
  font-size:.92rem;
  line-height:1.8;
  color:var(--ink-soft);
}
.page-contact .channel-card__grid{
  display:grid;
  gap:var(--sp-4);
  margin-top:var(--sp-4);
  padding-top:var(--sp-4);
  border-top:1px solid var(--panel-line);
}
@media (min-width:900px){
  .page-contact .channel-card__grid{
    grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
    gap:var(--sp-5);
  }
}
.page-contact .channel-card__main,
.page-contact .channel-card__side{min-width:0;}
.page-contact .channel-line{
  display:flex;
  flex-direction:column;
  gap:4px;
  padding:var(--sp-2) var(--sp-3);
  margin-bottom:var(--sp-2);
  border:1px solid var(--panel-line);
  background:#fff;
  text-decoration:none;
  color:var(--ink);
  transition:border-color .2s var(--ease),background-color .2s var(--ease);
}
.page-contact .channel-line:hover,
.page-contact .channel-line:focus-visible{
  border-color:var(--cyan-deep);
  background:#F8FBFF;
}
.page-contact .channel-line__label{
  font-family:var(--font-mono);
  font-size:.68rem;
  letter-spacing:.14em;
  color:var(--ink-soft);
}
.page-contact .channel-line__value{
  font-size:1.05rem;
  line-height:1.4;
  letter-spacing:-.01em;
  word-break:break-all;
}
@media (min-width:600px){
  .page-contact .channel-line__value{font-size:1.25rem;}
}
.page-contact .channel-card__addr{
  margin:var(--sp-2) 0 0;
  font-size:.88rem;
  line-height:1.75;
  color:var(--ink);
}
.page-contact .channel-card__addr span{
  display:block;
  margin-bottom:2px;
  font-family:var(--font-mono);
  font-size:.68rem;
  letter-spacing:.14em;
  color:var(--ink-soft);
}
.page-contact .channel-card__note{
  margin:var(--sp-2) 0 0;
  font-size:.84rem;
  line-height:1.8;
  color:var(--ink-soft);
}
.page-contact .channel-card__help{
  display:inline-block;
  margin-top:var(--sp-2);
  font-size:.86rem;
  color:var(--cyan-deep);
  text-decoration:none;
  border-bottom:1px solid currentColor;
  padding-bottom:2px;
}
.page-contact .channel-card__help:hover{color:var(--ink);}
.page-contact .channel-card__side h3{
  font-size:1rem;
  margin-bottom:var(--sp-2);
}
.page-contact .prepare-list{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:var(--sp-1);
}
.page-contact .prepare-list li{
  position:relative;
  padding-left:18px;
  font-size:.88rem;
  line-height:1.75;
  color:var(--ink-soft);
}
.page-contact .prepare-list li::before{
  content:"";
  position:absolute;
  left:0;
  top:.62em;
  width:7px;
  height:7px;
  background:var(--cyan-deep);
  transform:rotate(45deg);
}
.page-contact .channel-card__tip{
  margin:var(--sp-3) 0 0;
  padding-top:var(--sp-2);
  border-top:1px dashed var(--panel-line);
  font-family:var(--font-mono);
  font-size:.78rem;
  line-height:1.75;
  color:var(--ink);
}

/* ---------- 常见问题 ---------- */
.page-contact .faq-list{
  border-top:1px solid var(--line);
}
.page-contact .faq-item{
  border-bottom:1px solid var(--line);
}
.page-contact .faq-item summary{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:var(--sp-3);
  padding:var(--sp-3) 0;
  cursor:pointer;
  list-style:none;
  font-family:var(--font-head);
  font-weight:700;
  font-size:.98rem;
  line-height:1.6;
  color:var(--stardust);
  transition:color .2s var(--ease);
}
@media (min-width:900px){
  .page-contact .faq-item summary{font-size:1.05rem;}
}
.page-contact .faq-item summary::-webkit-details-marker{display:none;}
.page-contact .faq-item summary::marker{content:"";}
.page-contact .faq-item summary::after{
  content:"+";
  flex:none;
  font-family:var(--font-mono);
  font-size:1.1rem;
  line-height:1;
  color:var(--cyan);
}
.page-contact .faq-item[open] summary::after{content:"–";}
.page-contact .faq-item summary:hover{color:var(--cyan);}
.page-contact .faq-item__q{min-width:0;}
.page-contact .faq-item__a{
  padding:0 0 var(--sp-3);
  max-width:44em;
}
.page-contact .faq-item__a p{
  margin:0;
  font-size:.9rem;
  line-height:1.9;
  color:var(--mist);
}

/* ---------- 延伸入口 ---------- */
.page-contact .coop-head--plain{margin-bottom:var(--sp-4);}
.page-contact .next-links{
  display:grid;
  gap:var(--sp-2);
  grid-template-columns:minmax(0,1fr);
}
@media (min-width:700px){
  .page-contact .next-links{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (min-width:1080px){
  .page-contact .next-links{grid-template-columns:repeat(4,minmax(0,1fr));}
}
.page-contact .next-link{
  display:flex;
  flex-direction:column;
  gap:var(--sp-1);
  padding:var(--sp-3);
  background:var(--card);
  border:1px solid var(--line);
  text-decoration:none;
  color:var(--stardust);
  min-width:0;
  transition:border-color .2s var(--ease),background-color .2s var(--ease);
}
.page-contact .next-link:hover,
.page-contact .next-link:focus-visible{
  border-color:var(--cyan);
  background:#101B3E;
}
.page-contact .next-link__label{
  font-family:var(--font-head);
  font-weight:700;
  font-size:.98rem;
}
.page-contact .next-link__desc{
  font-size:.84rem;
  line-height:1.75;
  color:var(--mist);
}
