/* ===== 咨询入口 / page-contact ===== */

.page-contact {
  --pc-line: rgba(124, 140, 161, 0.34);
  --pc-line-soft: rgba(124, 140, 161, 0.22);
  position: relative;
  background-color: var(--ly-deep);
  background-image:
    radial-gradient(120% 70% at 8% 0%, rgba(33, 230, 193, 0.12), transparent 55%),
    radial-gradient(90% 60% at 100% 2%, rgba(46, 125, 255, 0.16), transparent 58%);
  background-repeat: no-repeat;
  color: rgba(244, 241, 234, 0.82);
  font-family: var(--ly-font-body);
  font-size: var(--ly-fs-17);
  line-height: 1.85;
  overflow-x: hidden;
}

.page-contact * {
  box-sizing: border-box;
}

.page-contact .pc-shell {
  width: 100%;
  max-width: var(--ly-shell);
  margin-inline: auto;
  padding-inline: 20px;
}

/* --- 面包屑 --- */

.page-contact .pc-crumb {
  padding-block: 24px 6px;
}

.page-contact .pc-crumb .ly-breadcrumb__link {
  color: var(--ly-steel);
  text-decoration: none;
  transition: color 120ms ease;
}

.page-contact .pc-crumb .ly-breadcrumb__link:hover {
  color: var(--ly-cyan);
}

.page-contact .pc-crumb .ly-breadcrumb__sep {
  color: rgba(124, 140, 161, 0.6);
  margin-inline: 8px;
}

.page-contact .pc-crumb__current {
  color: var(--ly-paper);
}

/* --- 首屏 --- */

.page-contact .pc-masthead {
  max-width: 900px;
  padding-block: 22px 52px;
}

.page-contact .pc-kicker {
  margin: 0 0 16px;
  font-family: var(--ly-font-mono);
  font-size: var(--ly-fs-12);
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: var(--ly-cyan);
}

.page-contact .pc-h1 {
  margin: 0;
  font-family: var(--ly-font-display);
  font-size: var(--ly-fs-52);
  font-weight: 900;
  line-height: 1.08;
  letter-spacing: -0.02em;
  color: var(--ly-paper);
}

.page-contact .pc-lead {
  margin: 24px 0 0;
  max-width: 64ch;
  font-size: var(--ly-fs-21);
  line-height: 1.7;
  color: rgba(244, 241, 234, 0.76);
}

/* --- 分区骨架 --- */

.page-contact .pc-band {
  padding-block: 72px;
}

.page-contact .pc-band--paper {
  background-color: var(--ly-paper);
  color: var(--ly-ink);
}

.page-contact .pc-band--ink {
  background-color: var(--ly-ink);
}

.page-contact .pc-band--closing {
  border-top: 1px solid var(--pc-line-soft);
  background-image: radial-gradient(80% 130% at 100% 0%, rgba(255, 107, 74, 0.16), transparent 62%);
  background-repeat: no-repeat;
}

.page-contact .pc-h2 {
  margin: 0;
  font-family: var(--ly-font-display);
  font-size: var(--ly-fs-36);
  font-weight: 800;
  line-height: 1.16;
  letter-spacing: -0.01em;
  color: var(--ly-paper);
}

.page-contact .pc-h3 {
  margin: 0;
  font-family: var(--ly-font-display);
  font-size: var(--ly-fs-21);
  font-weight: 800;
  line-height: 1.3;
  color: var(--ly-paper);
}

.page-contact .pc-band--paper .pc-h2,
.page-contact .pc-band--paper .pc-h3 {
  color: var(--ly-ink);
}

.page-contact .pc-body {
  margin: 18px 0 0;
  max-width: 68ch;
  font-size: var(--ly-fs-17);
  line-height: 1.85;
}

/* --- 主分栏 --- */

.page-contact .pc-split {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 40px;
  padding-bottom: 88px;
}

/* --- 联络卡 --- */

.page-contact .pc-liaison {
  background-color: var(--ly-ink);
  border: 1px solid rgba(33, 230, 193, 0.3);
  border-radius: var(--ly-radius-card);
  overflow: hidden;
}

.page-contact .pc-liaison__figure {
  margin: 0;
  background-color: var(--ly-deep);
}

.page-contact .pc-liaison__figure img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1000 / 640;
  object-fit: cover;
}

.page-contact .pc-liaison__body {
  padding: 26px 22px 28px;
}

.page-contact .pc-liaison__note {
  margin: 10px 0 22px;
  font-size: var(--ly-fs-15);
  line-height: 1.7;
  color: var(--ly-steel);
}

.page-contact .pc-liaison__list {
  margin: 0;
  padding: 0;
}

.page-contact .pc-liaison__row {
  padding-block: 16px;
  border-top: 1px solid rgba(124, 140, 161, 0.28);
}

.page-contact .pc-liaison__row:first-child {
  padding-top: 0;
  border-top: 0;
}

.page-contact .pc-liaison__label {
  margin: 0;
  font-size: var(--ly-fs-12);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ly-steel);
}

.page-contact .pc-liaison__data {
  margin: 6px 0 0;
}

.page-contact .pc-liaison__value {
  display: inline-block;
  font-family: var(--ly-font-mono);
  font-size: var(--ly-fs-17);
  letter-spacing: 0.01em;
  color: var(--ly-cyan);
  text-decoration: none;
  word-break: break-word;
  border-bottom: 1px solid rgba(33, 230, 193, 0.35);
  padding-bottom: 2px;
  transition: color 120ms ease, border-color 120ms ease;
}

.page-contact a.pc-liaison__value:hover,
.page-contact a.pc-liaison__value:focus-visible {
  color: var(--ly-paper);
  border-bottom-color: var(--ly-paper);
}

.page-contact .pc-liaison__hours {
  margin: 20px 0 0;
  font-size: var(--ly-fs-15);
  line-height: 1.7;
  color: rgba(244, 241, 234, 0.68);
}

/* --- 事由分栏 --- */

.page-contact .pc-routes__lead {
  margin: 14px 0 30px;
  max-width: 52ch;
  font-size: var(--ly-fs-17);
  color: var(--ly-steel);
}

.page-contact .pc-routes__list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.page-contact .pc-route {
  padding-block: 24px;
  border-top: 1px solid var(--pc-line);
  transition: border-color 120ms ease;
}

.page-contact .pc-route:last-child {
  border-bottom: 1px solid var(--pc-line);
}

.page-contact .pc-route:hover,
.page-contact .pc-route:focus-within,
.page-contact .pc-route:hover + .pc-route,
.page-contact .pc-route:focus-within + .pc-route {
  border-top-color: var(--ly-cyan);
}

.page-contact .pc-route:last-child:hover,
.page-contact .pc-route:last-child:focus-within {
  border-bottom-color: var(--ly-cyan);
}

.page-contact .pc-route__num {
  display: inline-block;
  font-family: var(--ly-font-mono);
  font-size: var(--ly-fs-12);
  letter-spacing: 0.18em;
  color: var(--ly-coral);
}

.page-contact .pc-route__title {
  margin: 8px 0 0;
  font-family: var(--ly-font-display);
  font-size: var(--ly-fs-21);
  font-weight: 800;
  line-height: 1.3;
  color: var(--ly-paper);
}

.page-contact .pc-route__body {
  margin: 8px 0 0;
  max-width: 60ch;
  font-size: var(--ly-fs-17);
  line-height: 1.8;
  color: rgba(244, 241, 234, 0.76);
}

.page-contact .pc-route__action {
  display: inline-block;
  margin-top: 14px;
  font-size: var(--ly-fs-15);
  font-weight: 600;
  color: var(--ly-cyan);
  text-decoration: none;
  border-bottom: 1px solid rgba(33, 230, 193, 0.4);
  transition: color 120ms ease, border-color 120ms ease;
}

.page-contact .pc-route__action:hover,
.page-contact .pc-route__action:focus-visible {
  color: var(--ly-coral);
  border-bottom-color: var(--ly-coral);
}

/* --- 纠错章节 --- */

.page-contact .pc-fix__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 36px;
}

.page-contact .pc-fix__text .pc-body {
  color: rgba(10, 31, 60, 0.78);
}

.page-contact .pc-bullets {
  list-style: none;
  margin: 22px 0 0;
  padding: 0;
  display: grid;
  gap: 12px;
}

.page-contact .pc-bullets li {
  position: relative;
  padding-left: 22px;
  font-size: var(--ly-fs-17);
  line-height: 1.75;
  color: rgba(10, 31, 60, 0.78);
}

.page-contact .pc-bullets li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.78em;
  width: 10px;
  height: 2px;
  background-color: var(--ly-coral);
}

.page-contact .pc-fix__figure {
  margin: 0;
  border: 1px solid rgba(10, 31, 60, 0.14);
  border-radius: var(--ly-radius-card);
  overflow: hidden;
  background-color: var(--ly-deep);
}

.page-contact .pc-fix__figure img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
}

.page-contact .pc-fix__figure .ly-media__caption {
  display: block;
  padding: 14px 16px;
  font-size: var(--ly-fs-12);
  line-height: 1.65;
  color: rgba(244, 241, 234, 0.72);
  background-color: var(--ly-deep);
}

/* --- 地址章节 --- */

.page-contact .pc-addr__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 40px;
}

.page-contact .pc-address__value {
  margin: 22px 0 0;
  padding-left: 20px;
  border-left: 3px solid var(--ly-cyan);
  font-family: var(--ly-font-display);
  font-size: var(--ly-fs-28);
  font-weight: 800;
  line-height: 1.4;
  letter-spacing: 0.02em;
  color: var(--ly-paper);
}

.page-contact .pc-body--muted {
  margin-top: 20px;
  max-width: 46ch;
  font-size: var(--ly-fs-15);
  color: var(--ly-steel);
}

.page-contact .pc-steps {
  list-style: none;
  margin: 20px 0 0;
  padding: 0;
  display: grid;
  gap: 16px;
}

.page-contact .pc-steps li {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 12px;
  align-items: baseline;
  padding-top: 16px;
  border-top: 1px solid var(--pc-line-soft);
  font-size: var(--ly-fs-15);
  line-height: 1.8;
  color: rgba(244, 241, 234, 0.78);
}

.page-contact .pc-steps li:first-child {
  padding-top: 0;
  border-top: 0;
}

.page-contact .pc-steps__n {
  font-family: var(--ly-font-mono);
  font-size: var(--ly-fs-12);
  color: var(--ly-cyan);
}

/* --- 合作章节 --- */

.page-contact .pc-partner__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 28px;
  margin-top: 38px;
}

.page-contact .pc-partner__item {
  padding-top: 18px;
  border-top: 2px solid rgba(10, 31, 60, 0.16);
  transition: border-color 120ms ease;
}

.page-contact .pc-partner__item:hover {
  border-top-color: var(--ly-coral);
}

.page-contact .pc-partner__item .pc-h3 {
  font-size: var(--ly-fs-17);
}

.page-contact .pc-partner__item p {
  margin: 10px 0 0;
  font-size: var(--ly-fs-15);
  line-height: 1.78;
  color: rgba(10, 31, 60, 0.72);
}

/* --- 内联链接 --- */

.page-contact .pc-inline-link {
  color: var(--ly-blue);
  text-decoration: none;
  border-bottom: 1px solid rgba(46, 125, 255, 0.45);
  transition: color 120ms ease, border-color 120ms ease;
}

.page-contact .pc-inline-link:hover,
.page-contact .pc-inline-link:focus-visible {
  color: var(--ly-cyan);
  border-bottom-color: var(--ly-cyan);
}

.page-contact .pc-band--paper .pc-inline-link {
  color: #1E56B8;
  border-bottom-color: rgba(30, 86, 184, 0.4);
}

.page-contact .pc-band--paper .pc-inline-link:hover,
.page-contact .pc-band--paper .pc-inline-link:focus-visible {
  color: #0A1F3C;
  border-bottom-color: #0A1F3C;
}

/* --- 收尾 --- */

.page-contact .pc-closing__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 36px;
}

.page-contact .pc-closing__list {
  list-style: none;
  margin: 24px 0 0;
  padding: 0;
  display: grid;
  gap: 12px;
}

.page-contact .pc-closing__list li {
  position: relative;
  padding-left: 20px;
  font-size: var(--ly-fs-17);
  color: rgba(244, 241, 234, 0.8);
}

.page-contact .pc-closing__list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.8em;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: var(--ly-cyan);
}

.page-contact .pc-closing__aside {
  padding: 24px 22px;
  border: 1px solid rgba(255, 107, 74, 0.4);
  border-radius: var(--ly-radius-card);
  background-color: rgba(7, 20, 39, 0.72);
}

.page-contact .pc-closing__aside p {
  margin: 0;
  font-size: var(--ly-fs-15);
  line-height: 1.85;
  color: rgba(244, 241, 234, 0.78);
}

/* --- 响应式 --- */

@media (min-width: 700px) {
  .page-contact .pc-partner__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 32px 40px;
  }
}

@media (min-width: 768px) {
  .page-contact .pc-shell {
    padding-inline: 40px;
  }

  .page-contact .pc-band {
    padding-block: 88px;
  }
}

@media (min-width: 900px) {
  .page-contact .pc-masthead {
    padding-block: 28px 64px;
  }

  .page-contact .pc-h1 {
    font-size: var(--ly-fs-76);
  }

  .page-contact .pc-h2 {
    font-size: var(--ly-fs-52);
  }

  .page-contact .pc-band {
    padding-block: 104px;
  }

  .page-contact .pc-closing__grid {
    grid-template-columns: 7fr 5fr;
    gap: 64px;
    align-items: start;
  }
}

@media (min-width: 940px) {
  .page-contact .pc-fix__grid {
    grid-template-columns: 6fr 5fr;
    gap: 64px;
    align-items: start;
  }

  .page-contact .pc-addr__grid {
    grid-template-columns: 6fr 5fr;
    gap: 64px;
    align-items: start;
  }
}

@media (min-width: 1000px) {
  .page-contact .pc-split {
    grid-template-columns: 5fr 7fr;
    gap: 56px;
    align-items: start;
  }
}

@media (min-width: 1080px) {
  .page-contact .pc-partner__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

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