/* =========================================================================
   RH98 Pages v3 — 「联系我们」/「建站知识」/「建站案例」/「付款方式」
   依赖 rh98-lovable.css 设计变量；依赖 rh98-pages-v2.css 的 .pgs-* 版块、
   .pgs-hero、.rv-init 进场动效
   作用域：body.pg-contact / .pg-news / .pg-case / .pg-pay
   ========================================================================= */

/* -------------------------------------------------------------------------
   0. 通用：Hero 数据条 / 区块骨架 / 分页
   ------------------------------------------------------------------------- */
.pgx-hero__stats {
  display: flex;
  flex-wrap: wrap;
  gap: 14px 46px;
  margin-top: 44px;
  padding-top: 26px;
  border-top: 1px solid rgba(255, 255, 255, .14);
}
.pgx-hero__stat {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.pgx-hero__stat b {
  font-size: 1.7rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: -.02em;
  color: var(--gold);
}
.pgx-hero__stat span {
  font-size: 12.5px;
  letter-spacing: .04em;
  color: rgba(255, 255, 255, .6);
}
@media (max-width: 640px) {
  .pgx-hero__stats { gap: 16px 28px; margin-top: 32px; }
  .pgx-hero__stat b { font-size: 1.35rem; }
}

.pgx-hero .page-hero__desc { max-width: 640px; }

.pgx-pager { margin-top: 56px; }
.pgx-pager .pagination { margin-top: 0; }

/* 空状态 */
.pgx-empty {
  padding: 72px 24px;
  text-align: center;
  border: 1px dashed var(--border);
  border-radius: 20px;
  color: var(--muted);
  font-size: 15px;
}

/* -------------------------------------------------------------------------
   1. 筛选条（知识 / 案例共用）
   ------------------------------------------------------------------------- */
.pgx-filter {
  position: sticky;
  top: 71px;
  z-index: 60;
  background: rgba(247, 243, 237, .93);
  backdrop-filter: blur(12px);
  border-bottom: 1px solid var(--border);
}
.pgx-filter__inner {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 16px 0;
  overflow-x: auto;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}
.pgx-filter__inner::-webkit-scrollbar { display: none; }
.pgx-filter__label {
  flex: 0 0 auto;
  margin-right: 6px;
  font-size: 11px;
  letter-spacing: .26em;
  text-transform: uppercase;
  color: var(--muted);
}
.pgx-chip {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 9px 18px;
  border: 1px solid var(--border);
  border-radius: 999px;
  background: #fff;
  font-size: 13.5px;
  line-height: 1.2;
  color: var(--muted);
  white-space: nowrap;
  transition: color .25s, border-color .25s, background .25s, box-shadow .25s;
}
.pgx-chip:hover {
  color: var(--primary);
  border-color: rgba(122, 26, 46, .34);
  background: rgba(122, 26, 46, .04);
}
.pgx-chip.is-on {
  color: #fff;
  background: var(--primary);
  border-color: var(--primary);
  box-shadow: 0 12px 24px -14px rgba(122, 26, 46, .9);
}
@media (max-width: 767px) {
  .pgx-filter { top: 63px; }
  .pgx-filter__inner { padding: 12px 0; }
  .pgx-filter__label { display: none; }
  .pgx-chip { padding: 8px 15px; font-size: 12.5px; }
}

/* -------------------------------------------------------------------------
   2. 「建站知识」列表（纯文字新闻列表，不显示缩略图）
   ------------------------------------------------------------------------- */
.kn-list {
  border-top: 1px solid var(--border);
}
.kn-row {
  display: grid;
  grid-template-columns: 112px minmax(0, 1fr) auto;
  gap: 6px 30px;
  align-items: baseline;
  padding: 25px 10px;
  border-bottom: 1px solid var(--border);
  transition: background .25s;
}
.kn-row:hover { background: rgba(122, 26, 46, .035); }
.kn-row__date {
  font-size: 13px;
  letter-spacing: .04em;
  color: var(--muted);
  font-variant-numeric: tabular-nums;
}
.kn-row__main { min-width: 0; }
.kn-row__title {
  display: block;
  font-size: 16.5px;
  font-weight: 700;
  line-height: 1.6;
  color: var(--foreground);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  transition: color .2s;
}
.kn-row:hover .kn-row__title { color: var(--primary); }
.kn-row__desc {
  display: block;
  margin-top: 6px;
  font-size: 13.5px;
  line-height: 1.8;
  color: var(--muted);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.kn-row__go {
  font-size: 18px;
  line-height: 1;
  color: rgba(107, 92, 92, .5);
  transition: color .2s, transform .2s;
}
.kn-row:hover .kn-row__go { color: var(--primary); transform: translateX(4px); }

@media (max-width: 700px) {
  .kn-row {
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-areas: 'date go' 'main main';
    gap: 8px 14px;
    padding: 20px 4px;
  }
  .kn-row__date { grid-area: date; font-size: 12px; }
  .kn-row__main { grid-area: main; }
  .kn-row__go { grid-area: go; align-self: start; }
  .kn-row__title { font-size: 15.5px; white-space: normal; }
}

/* 知识页数据条 */
.kn-stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1px;
  background: var(--border);
  border: 1px solid var(--border);
  border-radius: 18px;
  overflow: hidden;
}
.kn-stats__item {
  padding: 26px 28px;
  background: var(--card);
}
.kn-stats__item b {
  display: block;
  font-size: 1.6rem;
  font-weight: 800;
  line-height: 1;
  color: var(--primary);
  letter-spacing: -.02em;
}
.kn-stats__item span {
  display: block;
  margin-top: 9px;
  font-size: 12.5px;
  color: var(--muted);
  letter-spacing: .03em;
}
@media (max-width: 767px) {
  .kn-stats { grid-template-columns: repeat(2, 1fr); }
  .kn-stats__item { padding: 20px; }
  .kn-stats__item b { font-size: 1.3rem; }
}

/* -------------------------------------------------------------------------
   3. 「建站案例」列表（图片在上、信息在下，无遮罩层）
   ------------------------------------------------------------------------- */
.cs-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}
.cs-card {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid var(--border);
  border-radius: 18px;
  background: var(--card);
  transition: transform .45s cubic-bezier(.22, 1, .36, 1), box-shadow .45s, border-color .45s;
}
.cs-card:hover {
  transform: translateY(-4px);
  border-color: rgba(122, 26, 46, .28);
  box-shadow: 0 28px 54px -32px rgba(42, 24, 24, .6);
}
.cs-card__media {
  position: relative;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  background: radial-gradient(circle at 80% 15%, rgba(201, 169, 97, .2), transparent 55%), linear-gradient(150deg, #8a1322, #4a0a12 88%);
}
.cs-card__media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .8s cubic-bezier(.22, 1, .36, 1);
}
.cs-card:hover .cs-card__media img { transform: scale(1.05); }
.cs-card__body {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: 20px 22px 22px;
}
.cs-card__cat {
  align-self: flex-start;
  padding: 3px 11px;
  border-radius: 999px;
  background: rgba(122, 26, 46, .07);
  color: var(--primary);
  font-size: 11px;
  letter-spacing: .05em;
  line-height: 1.7;
}
.cs-card__title {
  margin-top: 12px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.55;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  transition: color .2s;
}
.cs-card:hover .cs-card__title { color: var(--primary); }
.cs-card__desc {
  margin-top: 7px;
  font-size: 13px;
  line-height: 1.75;
  color: var(--muted);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.cs-card__go {
  margin-top: auto;
  padding-top: 16px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  font-size: 12.5px;
  font-weight: 600;
  letter-spacing: .04em;
  color: var(--primary);
}
.cs-card__go::after {
  content: '';
  width: 16px;
  height: 1px;
  background: currentColor;
  transition: width .3s;
}
.cs-card:hover .cs-card__go::after { width: 28px; }

/* 无封面时的品牌底纹（有图时被图片覆盖） */
.cs-card__mono {
  position: absolute;
  right: 8px;
  bottom: -10px;
  font-size: 72px;
  font-weight: 800;
  letter-spacing: -.04em;
  line-height: 1;
  color: rgba(255, 255, 255, .09);
  pointer-events: none;
  user-select: none;
}

@media (max-width: 1100px) {
  .cs-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
}
@media (max-width: 640px) {
  .cs-grid { grid-template-columns: 1fr; gap: 16px; }
  .cs-card__media { aspect-ratio: 16 / 10; }
  .cs-card__body { padding: 18px 18px 20px; }
}

/* -------------------------------------------------------------------------
   4. 「联系我们」
   ------------------------------------------------------------------------- */
.ct-channels {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  margin-top: -46px;
  position: relative;
  z-index: 40;
  background: var(--border);
  border: 1px solid var(--border);
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 30px 60px -46px rgba(42, 24, 24, .55);
}
.ct-channel {
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 30px 28px;
  background: var(--card);
  transition: background .3s;
}
.ct-channel:hover { background: #fff; }
.ct-channel__ico {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border-radius: 12px;
  background: rgba(122, 26, 46, .07);
  color: var(--primary);
  transition: background .3s, color .3s;
}
.ct-channel:hover .ct-channel__ico { background: var(--primary); color: #fff; }
.ct-channel__ico svg { width: 20px; height: 20px; }
.ct-channel__label {
  font-size: 11.5px;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--muted);
}
.ct-channel__value {
  font-size: 17px;
  font-weight: 700;
  line-height: 1.5;
  color: var(--foreground);
  letter-spacing: -.01em;
  word-break: break-word;
}
.ct-channel__value--sm { font-size: 14.5px; font-weight: 600; line-height: 1.65; }
.ct-channel__note { font-size: 12.5px; color: var(--muted); }

@media (max-width: 1023px) {
  .ct-channels { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: -30px; }
  .ct-channel { padding: 24px 22px; }
}
@media (max-width: 560px) {
  .ct-channels { grid-template-columns: 1fr; margin-top: -24px; }
  .ct-channel { flex-direction: row; align-items: center; gap: 16px; padding: 18px 20px; }
  .ct-channel__ico { flex: 0 0 auto; }
  .ct-channel__body { min-width: 0; }
  .ct-channel__label { margin-bottom: 4px; }
}

/* 主体两栏 */
.ct-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.42fr) minmax(0, .78fr);
  gap: 40px;
  align-items: start;
}
@media (max-width: 1023px) {
  .ct-layout { grid-template-columns: 1fr; gap: 30px; }
}

.ct-card {
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: 22px;
  padding: 42px 44px;
}
.ct-card__head { margin-bottom: 32px; }
.ct-card__title {
  font-size: 1.5rem;
  font-weight: 800;
  letter-spacing: -.015em;
}
.ct-card__sub {
  margin-top: 10px;
  font-size: 14px;
  line-height: 1.8;
  color: var(--muted);
}
@media (max-width: 767px) {
  .ct-card { padding: 26px 22px; border-radius: 18px; }
  .ct-card__title { font-size: 1.25rem; }
}

/* 表单 */
.ct-form .contact-form__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px 20px;
}
.ct-form .contact-form__field { display: flex; flex-direction: column; gap: 9px; }
.ct-form .contact-form__field--full { grid-column: 1 / -1; }
.ct-form .contact-form__field > span {
  font-size: 12.5px;
  font-weight: 600;
  letter-spacing: .04em;
  color: var(--foreground);
}
.ct-form .contact-form__field em { color: var(--primary-light); font-style: normal; }
.ct-form input[type="text"],
.ct-form textarea {
  width: 100%;
  padding: 13px 15px;
  border: 1px solid var(--border);
  border-radius: 11px;
  background: #faf7f2;
  font-family: inherit;
  font-size: 14px;
  color: var(--foreground);
  transition: border-color .25s, box-shadow .25s, background .25s;
}
.ct-form input[type="text"]::placeholder,
.ct-form textarea::placeholder { color: rgba(107, 92, 92, .62); }
.ct-form input[type="text"]:focus,
.ct-form textarea:focus {
  outline: none;
  background: #fff;
  border-color: rgba(122, 26, 46, .45);
  box-shadow: 0 0 0 4px rgba(122, 26, 46, .08);
}
.ct-form textarea { resize: vertical; min-height: 118px; }

.ct-form .contact-form__purpose { margin: 24px 0 20px; }
.ct-form .contact-form__purpose > span {
  display: block;
  margin-bottom: 12px;
  font-size: 12.5px;
  font-weight: 600;
  letter-spacing: .04em;
}
.ct-form .contact-form__radios {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.ct-form .contact-form__radios label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 9px 16px;
  border: 1px solid var(--border);
  border-radius: 999px;
  background: #faf7f2;
  font-size: 13px;
  color: var(--muted);
  cursor: pointer;
  transition: border-color .2s, color .2s, background .2s;
}
.ct-form .contact-form__radios label:hover { border-color: rgba(122, 26, 46, .3); color: var(--primary); }
.ct-form .contact-form__radios input { accent-color: var(--primary); }
.ct-form .btn-submit {
  width: 100%;
  margin-top: 8px;
  padding: 15px 30px;
  border: 0;
  border-radius: 999px;
  background: var(--primary);
  color: #fff;
  font-family: inherit;
  font-size: 15px;
  font-weight: 600;
  letter-spacing: .04em;
  cursor: pointer;
  transition: background .25s, transform .25s, box-shadow .25s;
}
.ct-form .btn-submit:hover {
  background: var(--primary-dark);
  transform: translateY(-2px);
  box-shadow: 0 20px 36px -20px rgba(122, 26, 46, .8);
}
.ct-form__tip {
  margin-top: 18px;
  font-size: 12.5px;
  line-height: 1.8;
  color: var(--muted);
}
@media (max-width: 560px) {
  .ct-form .contact-form__grid { grid-template-columns: 1fr; gap: 16px; }
}

/* 侧栏 */
.ct-aside { display: grid; gap: 18px; }
.ct-aside__card {
  padding: 28px 26px;
  border: 1px solid var(--border);
  border-radius: 18px;
  background: var(--card);
}
.ct-aside__card--deep {
  background: linear-gradient(150deg, var(--primary) 0%, var(--primary-dark) 100%);
  border-color: transparent;
  color: #fff;
}
.ct-aside__card--deep .ct-aside__t { color: #fff; }
.ct-aside__card--deep .ct-aside__row { border-color: rgba(255, 255, 255, .14); }
.ct-aside__card--deep .ct-aside__row span { color: rgba(255, 255, 255, .62); }
.ct-aside__card--deep .ct-aside__row b { color: #fff; }
.ct-aside__card--deep a { color: var(--gold); }
.ct-aside__t {
  font-size: 15px;
  font-weight: 700;
  letter-spacing: .01em;
  color: var(--foreground);
}
.ct-aside__rows { margin-top: 18px; }
.ct-aside__row {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  padding: 13px 0;
  border-top: 1px solid var(--border);
  font-size: 13.5px;
}
.ct-aside__row:first-child { border-top: 0; padding-top: 0; }
.ct-aside__row span { color: var(--muted); flex: 0 0 auto; }
.ct-aside__row b { font-weight: 600; text-align: right; }

.ct-quick { display: grid; gap: 12px; margin-top: 18px; }
.ct-quick__item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 16px;
  border-radius: 12px;
  background: rgba(122, 26, 46, .05);
  font-size: 13.5px;
  color: var(--foreground);
  transition: background .25s, transform .25s;
}
.ct-quick__item:hover { background: rgba(122, 26, 46, .1); transform: translateX(3px); }
.ct-quick__item b { font-weight: 700; }
.ct-quick__dot {
  width: 6px; height: 6px; border-radius: 50%;
  background: var(--primary);
  flex: 0 0 auto;
}

/* 响应流程 */
.ct-steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 26px;
  counter-reset: cstep;
}
.ct-step {
  position: relative;
  padding-top: 40px;
  counter-increment: cstep;
}
.ct-step::before {
  content: '0' counter(cstep);
  position: absolute;
  top: 0;
  left: 0;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .1em;
  color: var(--gold);
}
.ct-step::after {
  content: '';
  position: absolute;
  top: 8px;
  left: 46px;
  right: -26px;
  height: 1px;
  background: var(--border);
}
.ct-step:last-child::after { display: none; }
.ct-step__t {
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 10px;
}
.ct-step__d {
  font-size: 13.5px;
  line-height: 1.85;
  color: var(--muted);
}
@media (max-width: 900px) {
  .ct-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 24px; }
  .ct-step::after { display: none; }
}
@media (max-width: 520px) {
  .ct-steps { grid-template-columns: 1fr; }
}

/* FAQ */
.ct-faq { display: grid; gap: 12px; }
.ct-faq__item {
  border: 1px solid var(--border);
  border-radius: 14px;
  background: var(--card);
  overflow: hidden;
  transition: border-color .3s, background .3s;
}
.ct-faq__item[open] { border-color: rgba(122, 26, 46, .26); background: #fff; }
.ct-faq__item > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 19px 24px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  list-style: none;
}
.ct-faq__item > summary::-webkit-details-marker { display: none; }
.ct-faq__item > summary::marker { content: ''; }
.ct-faq__item > summary:hover { color: var(--primary); }
.ct-faq__sign {
  position: relative;
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
}
.ct-faq__sign::before,
.ct-faq__sign::after {
  content: '';
  position: absolute;
  background: currentColor;
  transition: transform .3s, opacity .3s;
}
.ct-faq__sign::before { top: 50%; left: 0; width: 100%; height: 1.5px; transform: translateY(-50%); }
.ct-faq__sign::after { left: 50%; top: 0; height: 100%; width: 1.5px; transform: translateX(-50%); }
.ct-faq__item[open] .ct-faq__sign::after { opacity: 0; }
.ct-faq__a {
  padding: 0 24px 22px;
  font-size: 14px;
  line-height: 1.95;
  color: var(--muted);
}
@media (max-width: 600px) {
  .ct-faq__item > summary { padding: 16px 18px; font-size: 14px; }
  .ct-faq__a { padding: 0 18px 18px; font-size: 13.5px; }
}

/* -------------------------------------------------------------------------
   5. 「付款方式」
   ------------------------------------------------------------------------- */
.pay-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
  gap: 34px;
  align-items: start;
}
@media (max-width: 900px) { .pay-layout { grid-template-columns: 1fr; } }

.pay-bank {
  position: relative;
  padding: 38px 36px;
  border-radius: 22px;
  background: linear-gradient(150deg, var(--primary) 0%, var(--primary-dark) 92%);
  color: #fff;
  overflow: hidden;
  box-shadow: 0 34px 60px -40px rgba(94, 10, 23, .9);
}
.pay-bank::after {
  content: 'RH98';
  position: absolute;
  right: -14px;
  bottom: -30px;
  font-size: 120px;
  font-weight: 800;
  letter-spacing: -.05em;
  color: rgba(255, 255, 255, .05);
  pointer-events: none;
}
.pay-bank__eyebrow {
  font-size: 11px;
  letter-spacing: .28em;
  color: var(--gold);
  text-transform: uppercase;
}
.pay-bank__title {
  margin-top: 12px;
  font-size: 1.5rem;
  font-weight: 800;
  letter-spacing: -.01em;
}
.pay-bank__rows { margin-top: 28px; position: relative; z-index: 2; }
.pay-bank__row {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 18px;
  padding: 15px 0;
  border-top: 1px solid rgba(255, 255, 255, .14);
}
.pay-bank__row:first-child { border-top: 0; }
.pay-bank__row span { font-size: 12.5px; letter-spacing: .08em; color: rgba(255, 255, 255, .58); flex: 0 0 auto; }
.pay-bank__row b {
  font-size: 14.5px;
  font-weight: 600;
  line-height: 1.7;
  text-align: right;
  letter-spacing: .01em;
  word-break: break-all;
}
.pay-bank__row b.is-acct {
  font-family: 'SF Mono', 'Consolas', ui-monospace, monospace;
  font-size: 16px;
  letter-spacing: .06em;
}
.pay-copy {
  margin-top: 26px;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 11px 22px;
  border: 1px solid rgba(255, 255, 255, .28);
  border-radius: 999px;
  background: rgba(255, 255, 255, .06);
  color: #fff;
  font-family: inherit;
  font-size: 13px;
  cursor: pointer;
  transition: background .25s, border-color .25s;
  position: relative;
  z-index: 2;
}
.pay-copy:hover { background: rgba(255, 255, 255, .14); border-color: rgba(255, 255, 255, .45); }
.pay-copy.is-done { background: var(--gold); border-color: var(--gold); color: #3a2410; }

.pay-side { display: grid; gap: 16px; }
.pay-note {
  padding: 26px 26px;
  border: 1px solid var(--border);
  border-radius: 18px;
  background: var(--card);
}
.pay-note__t { font-size: 15px; font-weight: 700; }
.pay-note ul { margin-top: 16px; display: grid; gap: 12px; }
.pay-note li {
  position: relative;
  padding-left: 20px;
  font-size: 13.5px;
  line-height: 1.85;
  color: var(--muted);
}
.pay-note li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 9px;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: rgba(122, 26, 46, .35);
}

.pay-flow {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  background: var(--border);
  border: 1px solid var(--border);
  border-radius: 18px;
  overflow: hidden;
}
.pay-flow__item {
  padding: 28px 26px;
  background: var(--card);
}
.pay-flow__n {
  font-size: 11px;
  letter-spacing: .2em;
  color: var(--gold);
  font-weight: 700;
}
.pay-flow__t { margin-top: 12px; font-size: 15.5px; font-weight: 700; }
.pay-flow__d { margin-top: 8px; font-size: 13px; line-height: 1.8; color: var(--muted); }
@media (max-width: 900px) {
  .pay-flow { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 520px) {
  .pay-flow { grid-template-columns: 1fr; }
  .pay-bank { padding: 28px 22px; }
  .pay-bank__row { flex-direction: column; gap: 6px; }
  .pay-bank__row b { text-align: left; }
}

/* -------------------------------------------------------------------------
   4. 核心服务 Hub（tid=2 栏目首页）
   ------------------------------------------------------------------------- */
.svc-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}
.svc-card {
  position: relative;
  display: flex;
  flex-direction: column;
  padding: 32px 30px 28px;
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: 20px;
  overflow: hidden;
  transition: transform .45s cubic-bezier(.22, 1, .36, 1), box-shadow .45s, border-color .45s;
}
.svc-card::before {
  content: '';
  position: absolute;
  left: 30px;
  right: 30px;
  top: 0;
  height: 3px;
  border-radius: 0 0 4px 4px;
  background: linear-gradient(90deg, var(--primary), var(--gold));
  opacity: 0;
  transition: opacity .35s;
}
.svc-card:hover {
  transform: translateY(-4px);
  border-color: rgba(122, 26, 46, .28);
  box-shadow: 0 28px 54px -32px rgba(42, 24, 24, .6);
}
.svc-card:hover::before { opacity: 1; }

.svc-card__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.svc-card__icon {
  display: grid;
  place-items: center;
  width: 56px;
  height: 56px;
  border-radius: 16px;
  background: rgba(122, 26, 46, .07);
  color: var(--primary);
  transition: background .35s, color .35s;
}
.svc-card:hover .svc-card__icon {
  background: var(--primary);
  color: #fff;
}
.svc-card__num {
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .08em;
  color: rgba(107, 92, 92, .35);
  font-variant-numeric: tabular-nums;
}
.svc-card__en {
  margin-top: 24px;
  font-size: 10.5px;
  font-weight: 600;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--gold);
}
.svc-card h3 {
  margin-top: 7px;
  font-size: 19px;
  font-weight: 800;
  letter-spacing: -.01em;
}
.svc-card__desc {
  margin-top: 11px;
  font-size: 13.5px;
  line-height: 1.85;
  color: var(--muted);
  flex: 1;
}
.svc-card__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 18px;
}
.svc-card__chip {
  padding: 4px 12px;
  border-radius: 999px;
  border: 1px solid rgba(122, 26, 46, .12);
  background: rgba(122, 26, 46, .04);
  font-size: 11.5px;
  line-height: 1.6;
  color: rgba(122, 26, 46, .78);
}
.svc-card__go {
  margin-top: 22px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: .05em;
  color: var(--primary);
}
.svc-card__go::after {
  content: '';
  width: 16px;
  height: 1px;
  background: currentColor;
  transition: width .3s;
}
.svc-card:hover .svc-card__go::after { width: 30px; }

/* 首卡：深红大卡（网站建设） */
.svc-card--wide {
  grid-column: span 2;
  grid-row: span 2;
  justify-content: flex-end;
  border: none;
  color: #fff;
  background:
    radial-gradient(circle at 85% 12%, rgba(201, 169, 97, .2), transparent 52%),
    linear-gradient(150deg, #8a1322, #4a0a12 88%);
}
.svc-card--wide::before { opacity: 0; }
.svc-card--wide .svc-card__icon {
  background: rgba(201, 169, 97, .16);
  color: var(--gold);
}
.svc-card--wide .svc-card__num { color: rgba(255, 255, 255, .32); }
.svc-card--wide h3 { font-size: clamp(1.5rem, 2.4vw, 2rem); }
.svc-card--wide .svc-card__desc {
  font-size: 14.5px;
  color: rgba(255, 255, 255, .72);
}
.svc-card--wide .svc-card__chip {
  border-color: rgba(201, 169, 97, .32);
  background: rgba(201, 169, 97, .1);
  color: var(--gold);
}
.svc-card--wide .svc-card__go { color: var(--gold); }
.svc-card--wide:hover { box-shadow: 0 34px 60px -34px rgba(42, 24, 24, .85); }
.svc-card--wide .svc-wm {
  position: absolute;
  right: -14px;
  top: 24px;
  font-size: clamp(72px, 9vw, 120px);
  font-weight: 800;
  letter-spacing: -.04em;
  line-height: 1;
  color: rgba(255, 255, 255, .06);
  pointer-events: none;
  user-select: none;
}

/* 服务流程 */
.svc-steps {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  margin-top: 64px;
  padding: 34px 34px 32px;
  border: 1px solid var(--border);
  border-radius: 20px;
  background: #fff;
}
.svc-step {
  position: relative;
  padding-left: 18px;
}
.svc-step::before {
  content: '';
  position: absolute;
  left: 0;
  top: 6px;
  bottom: 6px;
  width: 2px;
  border-radius: 2px;
  background: linear-gradient(180deg, var(--primary), rgba(201, 169, 97, .55));
}
.svc-step b {
  display: block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .18em;
  color: var(--gold);
}
.svc-step h4 {
  margin-top: 8px;
  font-size: 16.5px;
  font-weight: 800;
}
.svc-step p {
  margin-top: 8px;
  font-size: 12.5px;
  line-height: 1.8;
  color: var(--muted);
}

@media (max-width: 1100px) {
  .svc-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .svc-card--wide { grid-column: span 2; grid-row: auto; }
  .svc-steps { grid-template-columns: repeat(2, 1fr); gap: 24px 20px; }
}
@media (max-width: 640px) {
  .svc-grid { grid-template-columns: 1fr; gap: 16px; }
  .svc-card--wide { grid-column: span 1; }
  .svc-card { padding: 26px 24px 24px; }
  .svc-steps {
    grid-template-columns: 1fr;
    margin-top: 44px;
    padding: 26px 24px;
    gap: 22px;
  }
}
