.page-contact{
  position: relative;
  background:
    radial-gradient(circle at 85% 6%, rgba(57,255,20,.06), transparent 32%),
    radial-gradient(circle at 8% 30%, rgba(255,107,0,.08), transparent 28%),
    var(--c-deep);
  color: var(--c-text);
}

/* ===== 吸附式在线时间提示条 ===== */
.page-contact .pc-hours-bar{
  position: sticky;
  top: 0;
  z-index: 20;
  background: linear-gradient(90deg, var(--c-deeper), var(--c-panel));
  border-bottom: 1px solid var(--c-line);
  box-shadow: 0 4px 18px rgba(0,0,0,.22);
}
.page-contact .pc-hours-bar__inner{
  display: flex;
  align-items: center;
  gap: .6rem 1rem;
  flex-wrap: wrap;
  min-height: 48px;
  padding-block: .45rem;
}
.page-contact .pc-live-dot{
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--c-neon);
  box-shadow: 0 0 0 0 rgba(57,255,20,.55);
  animation: pc-pulse 1.8s var(--ease) infinite;
}
@keyframes pc-pulse{
  0%,100%{ box-shadow: 0 0 0 0 rgba(57,255,20,.45); }
  50%{ box-shadow: 0 0 0 7px rgba(57,255,20,0); }
}
.page-contact .pc-hours-bar__text{
  font-size: .92rem;
  color: var(--c-text);
}
.page-contact .pc-hours-bar__link{
  margin-left: auto;
  font-family: var(--font-data);
  font-size: .82rem;
  color: var(--c-neon);
  text-decoration: none;
  border-bottom: 1px dashed currentColor;
  transition: color .3s var(--ease);
}
.page-contact .pc-hours-bar__link:hover{
  color: var(--c-paper);
}

/* ===== 页头 ===== */
.page-contact .pc-page-head{
  padding-top: clamp(2.2rem, 5vw, 4rem);
  padding-bottom: clamp(1.6rem, 4vw, 3rem);
}
.page-contact .pc-page-head .fx-page-head__title{
  font-size: clamp(2rem, 5vw, 3.4rem);
  letter-spacing: .02em;
  margin: .6rem 0 .8rem;
}
.page-contact .fx-section__head{
  margin-bottom: 2rem;
}

/* ===== 01 联系渠道总览 ===== */
.page-contact .pc-overview-visual{
  margin: 0 0 2rem;
  position: relative;
  border: 1px solid var(--c-line);
  background: var(--c-deeper);
  overflow: hidden;
}
.page-contact .pc-overview-visual img{
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 10;
  object-fit: cover;
}
.page-contact .pc-overview-visual figcaption{
  position: absolute;
  left: 0;
  bottom: 0;
  max-width: 100%;
  padding: .6rem 1.2rem;
  font-family: var(--font-data);
  font-size: .82rem;
  color: var(--c-neon);
  background: rgba(6,18,35,.82);
  border-right: 3px solid var(--c-orange);
}

.page-contact .pc-channel-grid{
  gap: 1.4rem;
}
.page-contact .pc-channel{
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 230px;
  padding: 1.8rem 2rem;
  text-decoration: none;
  clip-path: polygon(0 0, calc(100% - 20px) 0, 100% 20px, 100% 100%, 20px 100%, 0 calc(100% - 20px));
  transition: transform .35s var(--ease), box-shadow .35s var(--ease);
}
.page-contact .pc-channel:hover{
  transform: translateY(-6px);
  box-shadow: 0 18px 34px -14px rgba(0,0,0,.55);
}
.page-contact .pc-channel__tag{
  font-family: var(--font-data);
  font-size: .8rem;
  letter-spacing: .16em;
}
.page-contact .pc-channel__index{
  position: absolute;
  right: 1.4rem;
  bottom: .7rem;
  font-family: var(--font-data);
  font-size: 4rem;
  font-weight: 500;
  line-height: 1;
  opacity: .12;
}
.page-contact .pc-channel__name{
  font-family: var(--font-head);
  font-size: 1.6rem;
  font-weight: 600;
  margin: .9rem 0 .5rem;
}
.page-contact .pc-channel__desc{
  margin: 0;
  padding-right: 1.4rem;
  font-size: .95rem;
  line-height: 1.6;
}
.page-contact .pc-channel--mail{
  background: linear-gradient(160deg, var(--c-deep), var(--c-panel));
  color: var(--c-text);
  box-shadow: inset 0 4px 0 var(--c-neon);
}
.page-contact .pc-channel--mail .pc-channel__tag{
  color: var(--c-neon);
}
.page-contact .pc-channel--tel{
  background: var(--c-paper);
  color: var(--c-deep);
  box-shadow: inset 0 4px 0 var(--c-orange);
}
.page-contact .pc-channel--tel .pc-channel__tag{
  color: #A64B00;
}
.page-contact .pc-channel--tel .pc-channel__desc{
  color: #33475C;
}
.page-contact .pc-channel--addr{
  background: linear-gradient(160deg, var(--c-deeper), var(--c-panel));
  color: var(--c-text);
  box-shadow: inset 0 4px 0 var(--c-muted);
}
.page-contact .pc-channel--addr .pc-channel__tag{
  color: var(--c-orange);
}

/* ===== 02 客服邮箱 ===== */
.page-contact .pc-mail-layout,
.page-contact .pc-tel-layout,
.page-contact .pc-address-layout{
  display: grid;
  gap: 1.6rem;
}
.page-contact .pc-mail-topics h3,
.page-contact .pc-tel-notes h3{
  font-family: var(--font-head);
  font-size: 1.3rem;
  margin: 0 0 1rem;
}
.page-contact .pc-mail-topics ul,
.page-contact .pc-tel-notes ul{
  list-style: none;
  margin: 0 0 1.5rem;
  padding: 0;
  border-top: 1px solid var(--c-line);
}
.page-contact .pc-mail-topics li,
.page-contact .pc-tel-notes li{
  position: relative;
  padding: .85rem 0 .85rem 2rem;
  border-bottom: 1px solid var(--c-line);
  font-size: .95rem;
  line-height: 1.6;
}
.page-contact .pc-mail-topics li::before,
.page-contact .pc-tel-notes li::before{
  content: "→";
  position: absolute;
  left: .4rem;
  top: .85rem;
  font-family: var(--font-data);
  font-weight: 700;
  color: var(--c-neon);
}
.page-contact .pc-tel-notes li::before{
  color: var(--c-orange);
}
.page-contact .pc-mail-card{
  position: relative;
  overflow: hidden;
  background: linear-gradient(150deg, var(--c-deeper), var(--c-panel));
  border: 1px solid var(--c-line);
  padding: 2.1rem 2rem;
  clip-path: polygon(0 0, calc(100% - 26px) 0, 100% 26px, 100% 100%, 0 100%);
}
.page-contact .pc-mail-card::after{
  content: "MAIL";
  position: absolute;
  right: -.3rem;
  bottom: -1rem;
  font-family: var(--font-head);
  font-size: 5rem;
  line-height: 1;
  color: rgba(57,255,20,.06);
}
.page-contact .pc-mail-address{
  display: block;
  font-family: var(--font-data);
  font-size: clamp(1.15rem, 4vw, 2rem);
  font-weight: 500;
  color: var(--c-neon);
  text-decoration: none;
  word-break: break-all;
  border-bottom: 1px dashed rgba(57,255,20,.45);
  margin: .9rem 0 1rem;
  padding-bottom: .3rem;
  transition: color .3s var(--ease), border-color .3s var(--ease);
}
.page-contact .pc-mail-address:hover{
  color: var(--c-paper);
  border-color: var(--c-paper);
}
.page-contact .pc-mail-note{
  margin: 0;
  color: var(--c-muted);
  font-size: .9rem;
  line-height: 1.7;
}
.page-contact .pc-link-btn{
  display: inline-block;
  margin-top: .5rem;
  padding: .55rem 1.2rem;
  border: 1px solid var(--c-neon);
  color: var(--c-neon);
  text-decoration: none;
  font-size: .92rem;
  transition: background .3s var(--ease), color .3s var(--ease);
}
.page-contact .pc-link-btn:hover{
  background: var(--c-neon);
  color: var(--c-deep);
}

/* ===== 03 客服电话 ===== */
.page-contact .pc-tel-card{
  position: relative;
  overflow: hidden;
  background:
    linear-gradient(135deg, rgba(255,107,0,.12), transparent 56%),
    var(--c-deeper);
  border: 1px solid var(--c-line);
  padding: 2.1rem 2rem;
}
.page-contact .pc-tel-card::after{
  content: "TEL";
  position: absolute;
  right: -.3rem;
  bottom: -1.1rem;
  font-family: var(--font-head);
  font-size: 5.4rem;
  font-weight: 600;
  line-height: 1;
  color: rgba(255,107,0,.08);
}
.page-contact .pc-tel-number{
  display: block;
  font-family: var(--font-data);
  font-size: clamp(1.7rem, 6vw, 3.1rem);
  font-weight: 500;
  color: var(--c-orange);
  text-decoration: none;
  letter-spacing: .02em;
  margin: .55rem 0 .6rem;
}
.page-contact .pc-tel-window{
  margin: 0;
  color: var(--c-muted);
  font-family: var(--font-data);
  font-size: .85rem;
}

/* ===== 04 运营地址 ===== */
.page-contact .pc-address-card{
  background: var(--c-paper);
  color: var(--c-deep);
  padding: 2.2rem 2rem;
  clip-path: polygon(0 0, calc(100% - 24px) 0, 100% 24px, 100% 100%, 0 100%);
  align-self: stretch;
}
.page-contact .pc-address-card h3{
  font-family: var(--font-head);
  font-size: 1.45rem;
  line-height: 1.4;
  margin: .7rem 0 1rem;
}
.page-contact .pc-address-card p{
  font-size: .95rem;
  line-height: 1.8;
  margin: 0 0 1.2rem;
}
.page-contact .pc-address-link{
  display: inline-block;
  font-family: var(--font-data);
  font-size: .9rem;
  color: var(--c-deep);
  text-decoration: none;
  border-bottom: 1px dashed currentColor;
  transition: color .3s var(--ease), border-color .3s var(--ease);
}
.page-contact .pc-address-link:hover{
  color: var(--c-orange);
  border-color: var(--c-orange);
}
.page-contact .pc-address-figure{
  margin: 0;
  position: relative;
  border: 1px solid var(--c-line);
  background: var(--c-deeper);
  overflow: hidden;
}
.page-contact .pc-address-figure img{
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}
.page-contact .pc-address-figure figcaption{
  position: absolute;
  left: 0;
  bottom: 0;
  padding: .55rem 1rem;
  font-family: var(--font-data);
  font-size: .8rem;
  color: var(--c-muted);
  background: rgba(6,18,35,.9);
}

/* ===== 05 回复时间 ===== */
.page-contact .pc-reply-grid{
  display: grid;
  gap: 1px;
  background: var(--c-line);
  border: 1px solid var(--c-line);
}
.page-contact .pc-reply-row{
  display: grid;
  gap: .35rem;
  padding: 1.4rem 1.5rem;
  background: var(--c-deeper);
}
.page-contact .pc-reply-method{
  font-family: var(--font-data);
  font-size: .92rem;
  color: var(--c-neon);
}
.page-contact .pc-reply-window{
  font-family: var(--font-head);
  font-size: 1.25rem;
  color: var(--c-text);
}
.page-contact .pc-reply-desc{
  color: var(--c-muted);
  font-size: .9rem;
  line-height: 1.6;
}

/* ===== 06 常见咨询主题 ===== */
.page-contact .pc-topic-cloud{
  display: flex;
  flex-wrap: wrap;
  gap: .7rem .85rem;
}
.page-contact .pc-topic{
  display: inline-block;
  padding: .5rem 1.1rem;
  border: 1px solid var(--c-line);
  border-radius: 999px;
  background: rgba(16,42,74,.55);
  color: var(--c-muted);
  text-decoration: none;
  font-size: .9rem;
  transition: background .3s var(--ease), border-color .3s var(--ease), color .3s var(--ease), transform .3s var(--ease);
}
.page-contact .pc-topic:hover{
  background: rgba(57,255,20,.08);
  border-color: var(--c-neon);
  color: var(--c-neon);
  transform: translateY(-2px);
}
.page-contact .pc-topics-foot{
  margin: 1.8rem 0 0;
  padding-left: 1rem;
  border-left: 3px solid var(--c-orange);
  color: var(--c-muted);
  font-size: .93rem;
  line-height: 1.7;
}

/* ===== 桌面布局 ===== */
@media (min-width: 900px){
  .page-contact .pc-channel-grid{
    grid-template-columns: repeat(3, 1fr);
    gap: 1.8rem;
  }
  .page-contact .pc-channel{
    min-height: 250px;
  }
  .page-contact .pc-overview-visual img{
    aspect-ratio: 16 / 7;
  }
  .page-contact .pc-mail-layout{
    grid-template-columns: 1.05fr .95fr;
    align-items: center;
    gap: 3rem;
  }
  .page-contact .pc-tel-layout{
    grid-template-columns: .95fr 1.05fr;
    align-items: center;
    gap: 3rem;
  }
  .page-contact .pc-address-layout{
    grid-template-columns: .92fr 1.08fr;
    align-items: stretch;
    gap: 2.4rem;
  }
  .page-contact .pc-reply-row{
    grid-template-columns: 1fr 1.5fr 1.7fr;
    align-items: center;
    gap: .4rem 2.2rem;
  }
}

@media (prefers-reduced-motion: reduce){
  .page-contact .pc-live-dot{
    animation: none;
  }
  .page-contact .pc-channel,
  .page-contact .pc-topic,
  .page-contact .pc-link-btn,
  .page-contact .pc-mail-address,
  .page-contact .pc-address-link{
    transition: none;
  }
}
