.page-contact{
  --ct-line:rgba(200,255,74,.20);
  --ct-soft-line:rgba(197,211,204,.14);
  --ct-grid:rgba(200,255,74,.09);
  padding-left:var(--page-x);
  padding-right:var(--page-x);
  padding-bottom:clamp(50px,7vw,90px);
  font-family:var(--font-sans);
  color:var(--mist-050);
  background:
    radial-gradient(90% 60% at 88% -6%, rgba(72,224,208,.10), transparent 62%),
    radial-gradient(70% 50% at 0% 34%, rgba(200,255,74,.06), transparent 60%),
    var(--forest-950);
  overflow-x:hidden;
}
.page-contact .ct-shell{
  width:100%;
  max-width:1180px;
  margin:0 auto;
}
.page-contact a:focus-visible,
.page-contact button:focus-visible{
  outline:2px solid var(--cyan-400);
  outline-offset:3px;
}

/* 面包屑 */
.page-contact .ct-crumb{
  display:flex;
  align-items:center;
  gap:10px;
  padding:24px 0 0;
  font-family:var(--font-mono);
  font-size:11px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--mist-300);
}
.page-contact .ct-crumb__link{
  color:var(--mist-300);
  text-decoration:none;
  border-bottom:1px solid transparent;
  transition:color .18s ease,border-color .18s ease;
}
.page-contact .ct-crumb__link:hover{
  color:var(--lime-400);
  border-bottom-color:var(--lime-400);
}
.page-contact .ct-crumb__sep{color:var(--slate-600);}
.page-contact .ct-crumb__now{color:var(--lime-400);}

/* 眉题 */
.page-contact .ct-eyebrow{
  display:inline-flex;
  align-items:center;
  gap:9px;
  margin:0 0 16px;
  font-family:var(--font-mono);
  font-size:11px;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--lime-400);
}
.page-contact .ct-eyebrow__dot{
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--lime-400);
  box-shadow:0 0 0 4px rgba(200,255,74,.14);
}

/* 首屏 */
.page-contact .ct-hero{
  display:grid;
  gap:clamp(24px,4vw,48px);
  padding:clamp(26px,4.5vw,52px) 0 clamp(34px,6vw,72px);
}
.page-contact .ct-hero__title{
  margin:0;
  font-size:clamp(29px,6vw,56px);
  line-height:1.14;
  letter-spacing:-.04em;
  font-weight:800;
  color:var(--mist-050);
}
.page-contact .ct-hero__lead{
  margin:20px 0 0;
  max-width:52ch;
  font-size:clamp(14.5px,1.5vw,17px);
  line-height:1.78;
  color:var(--mist-300);
}
.page-contact .ct-hero__quick{
  display:grid;
  gap:10px;
  margin-top:26px;
}
.page-contact .ct-quick{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:6px 14px;
  padding:14px 16px;
  background:var(--forest-800);
  border-left:2px solid var(--lime-400);
  clip-path:polygon(0 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%);
}
.page-contact .ct-quick__key{
  font-family:var(--font-mono);
  font-size:10.5px;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--mist-300);
}
.page-contact .ct-quick__val{
  font-family:var(--font-mono);
  font-size:14px;
  letter-spacing:.02em;
  color:var(--lime-300);
  word-break:break-all;
}
.page-contact .ct-hero__media{margin:0;}
.page-contact .ct-hero__frame{
  position:relative;
  border:1px solid var(--ct-soft-line);
  background:var(--forest-900);
  overflow:hidden;
}
.page-contact .ct-hero__frame img{
  display:block;
  width:100%;
  height:auto;
  max-width:100%;
  object-fit:cover;
  filter:saturate(.62) contrast(1.06) brightness(.92);
}
.page-contact .ct-hero__code{
  position:absolute;
  left:0;
  bottom:0;
  padding:7px 12px;
  background:var(--forest-950);
  font-family:var(--font-mono);
  font-size:10.5px;
  letter-spacing:.16em;
  color:var(--lime-400);
}

/* 联系卡 + 反馈类型 */
.page-contact .ct-main{
  display:grid;
  gap:clamp(24px,4vw,44px);
  align-items:start;
  padding-bottom:clamp(36px,6vw,68px);
}
.page-contact .ct-card{
  align-self:start;
  padding:clamp(20px,3vw,30px);
  background:var(--forest-800);
  border:1px solid var(--ct-soft-line);
  clip-path:polygon(0 0,100% 0,100% calc(100% - 20px),calc(100% - 20px) 100%,0 100%);
}
.page-contact .ct-card__label{
  margin:0 0 10px;
  font-family:var(--font-mono);
  font-size:10.5px;
  letter-spacing:.18em;
  color:var(--lime-400);
}
.page-contact .ct-card__title{
  margin:0 0 16px;
  font-size:clamp(19px,2.4vw,23px);
  letter-spacing:-.02em;
  font-weight:700;
  line-height:1.35;
}
.page-contact .ct-card__list{
  list-style:none;
  margin:0;
  padding:0;
}
.page-contact .ct-card__item{
  padding:13px 0;
  border-top:1px solid var(--ct-line);
}
.page-contact .ct-card__item:first-child{border-top:0;padding-top:0;}
.page-contact .ct-card__key{
  display:block;
  margin-bottom:5px;
  font-family:var(--font-mono);
  font-size:10px;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--mist-300);
}
.page-contact .ct-card__val{
  display:block;
  font-size:14.5px;
  line-height:1.62;
  color:var(--mist-050);
  word-break:break-word;
}
.page-contact .ct-card__val--mono{
  font-family:var(--font-mono);
  font-size:13.5px;
  letter-spacing:.01em;
  color:var(--lime-300);
  word-break:break-all;
}
.page-contact .ct-card__hint{
  display:block;
  margin-top:6px;
  font-size:12.5px;
  line-height:1.62;
  color:var(--mist-300);
}
.page-contact .ct-card__foot{
  margin:16px 0 0;
  padding-top:14px;
  border-top:1px solid var(--ct-line);
  font-size:12.5px;
  line-height:1.7;
  color:var(--mist-300);
}

.page-contact .ct-feed__head{max-width:60ch;}
.page-contact .ct-feed__title{
  margin:0;
  font-size:clamp(21px,3vw,30px);
  letter-spacing:-.03em;
  font-weight:700;
  line-height:1.28;
}
.page-contact .ct-feed__lead{
  margin:12px 0 0;
  font-size:14.5px;
  line-height:1.76;
  color:var(--mist-300);
}
.page-contact .ct-chips{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:20px 0 18px;
}
.page-contact .ct-chip{
  appearance:none;
  -webkit-appearance:none;
  padding:9px 16px;
  border:1px solid var(--slate-600);
  background:transparent;
  color:var(--mist-300);
  font-family:var(--font-sans);
  font-size:13.5px;
  letter-spacing:.02em;
  cursor:pointer;
  clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);
  transition:color .18s ease,border-color .18s ease,background .18s ease;
}
.page-contact .ct-chip:hover{
  border-color:var(--lime-400);
  color:var(--lime-400);
}
.page-contact .ct-chip[aria-pressed="true"]{
  background:var(--lime-400);
  border-color:var(--lime-400);
  color:var(--forest-950);
  font-weight:700;
}

.page-contact .ct-items{
  display:grid;
  gap:14px;
}
.page-contact .ct-item{
  padding:clamp(18px,2.6vw,26px);
  background:var(--forest-900);
  border:1px solid var(--ct-soft-line);
  border-left:2px solid var(--lime-400);
  transition:transform .2s ease,border-color .2s ease;
}
.page-contact .ct-item:hover{
  transform:translateY(-2px);
  border-color:var(--lime-400);
}
.page-contact .ct-item__tag{
  margin:0 0 8px;
  font-family:var(--font-mono);
  font-size:10.5px;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--lime-400);
}
.page-contact .ct-item__title{
  margin:0;
  font-size:clamp(16.5px,2vw,20px);
  letter-spacing:-.02em;
  font-weight:700;
  line-height:1.44;
}
.page-contact .ct-item__text{
  margin:10px 0 0;
  font-size:13.5px;
  line-height:1.74;
  color:var(--mist-300);
}
.page-contact .ct-item__list{
  list-style:none;
  margin:14px 0 0;
  padding:0;
  display:grid;
  gap:8px;
}
.page-contact .ct-item__list li{
  position:relative;
  padding-left:18px;
  font-size:13.5px;
  line-height:1.66;
  color:var(--mist-050);
}
.page-contact .ct-item__list li::before{
  content:"";
  position:absolute;
  left:0;
  top:.6em;
  width:7px;
  height:7px;
  border:1px solid var(--lime-400);
  transform:rotate(45deg);
}

/* 截图准备 */
.page-contact .ct-prep{
  display:grid;
  gap:clamp(22px,4vw,44px);
  padding:clamp(30px,5vw,62px) 0;
  border-top:1px solid var(--ct-line);
}
.page-contact .ct-prep__media{
  margin:0;
  border:1px solid var(--ct-soft-line);
  background:var(--forest-900);
  overflow:hidden;
}
.page-contact .ct-prep__media img{
  display:block;
  width:100%;
  height:auto;
  max-width:100%;
  object-fit:cover;
  filter:saturate(.6) contrast(1.05) brightness(.94);
}
.page-contact .ct-prep__copy h2{
  margin:0;
  font-size:clamp(21px,3.2vw,32px);
  letter-spacing:-.035em;
  font-weight:700;
  line-height:1.26;
}
.page-contact .ct-prep__copy > p{
  margin:14px 0 0;
  max-width:52ch;
  font-size:14.5px;
  line-height:1.76;
  color:var(--mist-300);
}
.page-contact .ct-prep__steps{
  list-style:none;
  margin:20px 0 0;
  padding:0;
  display:grid;
  gap:0;
}
.page-contact .ct-prep__steps li{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:12px;
  padding:11px 0;
  border-top:1px dashed var(--ct-line);
  font-size:13.5px;
  line-height:1.68;
  color:var(--mist-050);
}
.page-contact .ct-prep__num{
  font-family:var(--font-mono);
  font-size:11.5px;
  letter-spacing:.1em;
  color:var(--orange-500);
}

/* 响应 */
.page-contact .ct-sla{
  padding:clamp(30px,5vw,62px) 0;
  border-top:1px solid var(--ct-line);
}
.page-contact .ct-sla__head{max-width:62ch;}
.page-contact .ct-sla__head h2{
  margin:0;
  font-size:clamp(21px,3.2vw,32px);
  letter-spacing:-.035em;
  font-weight:700;
  line-height:1.26;
}
.page-contact .ct-sla__head p{
  margin:14px 0 0;
  font-size:14.5px;
  line-height:1.76;
  color:var(--mist-300);
}
.page-contact .ct-sla__grid{
  display:grid;
  gap:12px;
  margin-top:24px;
}
.page-contact .ct-sla__cell{
  padding:20px;
  background:var(--forest-800);
  border-top:2px solid var(--lime-400);
}
.page-contact .ct-sla__num{
  display:block;
  font-family:var(--font-mono);
  font-size:clamp(23px,3.4vw,33px);
  line-height:1.16;
  letter-spacing:-.03em;
  font-weight:700;
  color:var(--lime-400);
}
.page-contact .ct-sla__label{
  display:block;
  margin-top:7px;
  font-family:var(--font-mono);
  font-size:11px;
  letter-spacing:.13em;
  text-transform:uppercase;
  color:var(--mist-300);
}
.page-contact .ct-sla__cell p{
  margin:12px 0 0;
  font-size:13px;
  line-height:1.72;
  color:var(--mist-300);
}

/* 地址 */
.page-contact .ct-place{
  padding:clamp(30px,5vw,62px) 0;
  border-top:1px solid var(--ct-line);
}
.page-contact .ct-place__panel{
  padding:clamp(24px,4vw,44px);
  border:1px solid var(--ct-soft-line);
  background:
    linear-gradient(var(--ct-grid) 1px,transparent 1px) 0 0/46px 46px,
    linear-gradient(90deg,var(--ct-grid) 1px,transparent 1px) 0 0/46px 46px,
    var(--forest-900);
}
.page-contact .ct-place__panel h2{
  margin:0;
  font-size:clamp(21px,3.2vw,30px);
  letter-spacing:-.035em;
  font-weight:700;
  line-height:1.28;
}
.page-contact .ct-place__addr{
  margin:20px 0 0;
  font-family:var(--font-mono);
  font-size:clamp(16px,2.2vw,21px);
  line-height:1.5;
  letter-spacing:.01em;
  color:var(--lime-300);
  word-break:break-word;
}
.page-contact .ct-place__note{
  margin:12px 0 0;
  max-width:56ch;
  font-size:13px;
  line-height:1.76;
  color:var(--mist-300);
}

/* 合作 */
.page-contact .ct-coop{
  padding:clamp(30px,5vw,62px) 0;
  border-top:1px solid var(--ct-line);
}
.page-contact .ct-coop__grid{
  display:grid;
  gap:clamp(22px,4vw,42px);
}
.page-contact .ct-coop__intro h2{
  margin:0;
  font-size:clamp(21px,3.2vw,32px);
  letter-spacing:-.035em;
  font-weight:700;
  line-height:1.26;
}
.page-contact .ct-coop__intro p{
  margin:14px 0 0;
  max-width:56ch;
  font-size:14px;
  line-height:1.78;
  color:var(--mist-300);
}
.page-contact .ct-coop__lists{
  display:grid;
  gap:14px;
  align-content:start;
}
.page-contact .ct-coop__block{
  padding:20px;
  background:var(--forest-800);
  border-left:2px solid var(--orange-500);
}
.page-contact .ct-coop__block h3{
  margin:0 0 10px;
  font-size:15px;
  letter-spacing:-.01em;
  font-weight:700;
  color:var(--mist-050);
}
.page-contact .ct-coop__mono{
  margin:0 0 8px;
  font-family:var(--font-mono);
  font-size:13px;
  line-height:1.6;
  color:var(--lime-300);
  word-break:break-word;
}
.page-contact .ct-coop__block p:last-child{
  margin:8px 0 0;
  font-size:12.5px;
  line-height:1.72;
  color:var(--mist-300);
}
.page-contact .ct-coop__block ul{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:7px;
}
.page-contact .ct-coop__block li{
  position:relative;
  padding-left:15px;
  font-size:13px;
  line-height:1.66;
  color:var(--mist-050);
}
.page-contact .ct-coop__block li::before{
  content:"";
  position:absolute;
  left:0;
  top:.58em;
  width:5px;
  height:5px;
  background:var(--orange-500);
}

/* 站内延伸 */
.page-contact .ct-more{
  padding:clamp(26px,4vw,52px) 0 0;
  border-top:1px solid var(--ct-line);
}
.page-contact .ct-more__title{
  margin:0 0 14px;
  font-size:clamp(17px,2.4vw,23px);
  letter-spacing:-.02em;
  font-weight:700;
}
.page-contact .ct-more__list{
  list-style:none;
  margin:0;
  padding:0;
}
.page-contact .ct-more__list li{border-top:1px solid var(--ct-soft-line);}
.page-contact .ct-more__list a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:14px 2px;
  font-size:14px;
  line-height:1.62;
  color:var(--mist-050);
  text-decoration:none;
  transition:color .18s ease,padding-left .18s ease;
}
.page-contact .ct-more__list a::after{
  content:"→";
  flex:none;
  font-family:var(--font-mono);
  color:var(--cyan-400);
}
.page-contact .ct-more__list a:hover{
  color:var(--lime-400);
  padding-left:10px;
}

@media (min-width:640px){
  .page-contact .ct-hero__quick{grid-template-columns:1fr 1fr;}
  .page-contact .ct-sla__grid{grid-template-columns:repeat(2,1fr);}
}

@media (min-width:900px){
  .page-contact .ct-hero{
    grid-template-columns:1.04fr .96fr;
    align-items:center;
  }
  .page-contact .ct-main{
    grid-template-columns:minmax(268px,330px) minmax(0,1fr);
  }
  .page-contact .ct-card{
    position:sticky;
    top:96px;
  }
  .page-contact .ct-prep{
    grid-template-columns:.92fr 1.08fr;
    align-items:center;
  }
  .page-contact .ct-sla__grid{grid-template-columns:repeat(3,1fr);}
  .page-contact .ct-coop__grid{grid-template-columns:1.02fr .98fr;}
}

@media (min-width:1100px){
  .page-contact .ct-coop__lists{grid-template-columns:1fr 1fr;}
}

@media (prefers-reduced-motion:reduce){
  .page-contact *,
  .page-contact *::before,
  .page-contact *::after{
    transition:none !important;
    animation:none !important;
  }
  .page-contact .ct-item:hover{transform:none;}
  .page-contact .ct-more__list a:hover{padding-left:2px;}
}
