/* 测算器业务板块 v2 + 落地页压缩（embed 覆盖，与官网对齐） */

/* 去掉 Core Services 横条（两大核心卡片已自说明） */
#services .section-intro {
  display: none !important;
}

/* ── 隐藏旧版五大板块 ── */
#services .category-grid,
#services .section-intro:has(+ .featured-grid),
#services .featured-grid,
#services .catalog-wrap:has(+ *) {
  /* 由 align.js 替换后不存在 */
}
.services-v2 .category-grid,
#services:not(.services-v2) .category-grid {
  display: none !important;
}

/* 核心业务卡片 */
.services-v2 .core-hero-grid,
#services.services-aligned .core-hero-grid {
  display: grid;
  gap: 8px;
  margin-bottom: 8px;
}
@media (min-width: 640px) {
  .services-v2 .core-hero-grid,
  #services.services-aligned .core-hero-grid {
    grid-template-columns: 1fr 1fr;
  }
}
.core-hero-card,
#services.services-aligned .core-hero-card {
  position: relative;
  border-radius: 12px;
  padding: 12px;
  color: #fff;
  margin-bottom: 0;
}
.core-hero-card--compliance,
#services.services-aligned .core-hero-card--compliance {
  background: linear-gradient(135deg, #1a5fd4, #2d8cff);
}
.core-hero-card--outsource,
#services.services-aligned .core-hero-card--outsource {
  background: linear-gradient(135deg, #8b6914, #c9a962);
}
.core-hero-card__tag {
  position: absolute;
  top: 8px;
  right: 8px;
  font-size: 9px;
  font-weight: 700;
  padding: 2px 6px;
  border-radius: 4px;
  background: rgba(255, 255, 255, 0.22);
}
.core-hero-card h3 { font-size: 15px; font-weight: 700; margin: 0 0 4px; }
.core-hero-card p { font-size: 11px; line-height: 1.45; opacity: 0.92; margin: 0 0 6px; }
.core-hero-card .service-tags {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  padding: 0;
  margin: 0;
}
.core-hero-card .service-tags li {
  font-size: 9px;
  padding: 2px 6px;
  border-radius: 4px;
  background: rgba(255, 255, 255, 0.18);
}

.support-strip {
  display: flex;
  gap: 8px;
  padding: 10px 12px;
  margin-bottom: 8px;
  background: #fff;
  border-radius: 12px;
}
.support-strip__icon { font-size: 18px; }
.support-strip__body h3 { font-size: 13px; font-weight: 700; color: #1a5fd4; margin: 0 0 2px; }
.support-strip__body p { font-size: 10px; color: #64748b; margin: 0 0 4px; line-height: 1.4; }
.support-strip__tags { display: flex; flex-wrap: wrap; gap: 4px; }
.support-strip__tags span {
  font-size: 9px;
  padding: 2px 6px;
  border-radius: 4px;
  background: #e8f0fa;
  color: #1a5fd4;
}

.basic-dim {
  padding: 0;
  background: #fff;
  border-radius: 12px;
  margin-bottom: 8px;
  overflow: hidden;
}
.basic-dim__head {
  display: flex;
  gap: 8px;
  padding: 10px 12px 0;
  align-items: flex-start;
}
.basic-dim__icon {
  font-size: 18px;
  line-height: 1;
  margin-top: 2px;
}
.basic-dim__body h3 {
  font-size: 13px;
  font-weight: 700;
  color: #1a5fd4;
  margin: 0 0 2px;
}
.basic-dim__body .cat-summary {
  font-size: 10px;
  color: #64748b;
  line-height: 1.45;
  margin: 0 0 8px;
}
.basic-dim__cards {
  display: grid;
  gap: 8px;
  padding: 8px 12px 12px;
}
.basic-dim__card {
  border: 1px solid #e8eef5;
  border-radius: 10px;
  padding: 10px 10px 8px;
  background: #fafcff;
}
.basic-dim__card h4 {
  font-size: 11px;
  font-weight: 700;
  margin: 0 0 6px;
  color: #334155;
}
.basic-dim__card ul {
  padding-left: 16px;
  margin: 0;
  font-size: 10px;
  line-height: 1.5;
  color: #64748b;
}
.basic-dim__head--minimal {
  padding: 10px 12px 0;
}
.basic-dim__head--minimal h3 {
  font-size: 13px;
  font-weight: 600;
  color: var(--text-secondary, #64748b);
  margin: 0 0 2px;
}
.basic-dim__hint {
  font-size: 11px;
  color: #94a3b8;
  margin: 0 0 8px;
  line-height: 1.45;
}
.basic-dim__head h3 { font-size: 13px; font-weight: 600; color: #64748b; margin: 4px 0 2px; }
.basic-dim__head p { font-size: 11px; color: #94a3b8; margin: 0 0 8px; line-height: 1.45; }

/* 旧版 collapse 兼容 */
.service-catalog--restore,
.basic-dim__collapse {
  margin: 0;
}
.service-catalog--restore :deep(.van-collapse-item__title),
.service-catalog--restore .van-cell,
.service-catalog--restore .van-collapse-item__title {
  font-weight: 600 !important;
  font-size: 13px !important;
  color: #64748b !important;
}
.service-catalog--restore :deep(.van-cell),
.service-catalog--restore .van-cell {
  padding: 10px 12px !important;
  min-height: 40px !important;
  background: #fff !important;
}
.service-catalog--restore :deep(.van-collapse-item__content),
.service-catalog--restore .van-collapse-item__content {
  padding: 10px 12px 12px !important;
}
.basic-dim__collapse {
  border-top: 1px solid #eef2f6;
}
.basic-dim__collapse > summary {
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  cursor: pointer;
  padding: 10px 12px;
  font-weight: 600;
  font-size: 13px;
  color: #64748b;
  background: #fff;
}
.basic-dim__collapse > summary::-webkit-details-marker { display: none; }
.basic-dim__collapse[open] > summary .collapse-hint::before { content: ""; }
.basic-dim__collapse > summary .collapse-hint { font-size: 10px; color: #94a3b8; font-weight: 400; }
.basic-dim__collapse .cat-summary {
  font-size: 11px;
  color: #64748b;
  line-height: 1.45;
  margin: 0 0 8px;
  padding: 0 12px;
}
.basic-dim__collapse .highlight-tags { padding: 0 12px; margin-bottom: 8px; }
.basic-dim__collapse .detail-blocks { padding: 0 12px 12px; }
.basic-dim__collapse .detail-block {
  margin-bottom: 8px;
  padding-bottom: 8px;
  border-bottom: 1px dashed #e2e8f0;
}
.basic-dim__collapse .detail-block:last-child { border-bottom: none; margin-bottom: 0; padding-bottom: 0; }
.basic-dim__collapse .detail-block h4 { font-size: 11px; font-weight: 600; margin: 0 0 4px; color: #334155; }
.basic-dim__collapse .detail-block ul { padding-left: 16px; margin: 0; font-size: 10px; line-height: 1.45; color: #64748b; }
.collapse-hint { font-size: 10px; color: #94a3b8; font-weight: 400; }
.highlight-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 0; }
.highlight-tags .tag {
  font-size: 10px;
  padding: 4px 10px;
  border-radius: 6px;
  background: #f1f5f9;
  color: #64748b;
  border: 1px solid #e2e8f0;
}

#contact.contact-section,
#contact.contact-section--compact {
  display: none !important;
}

/* ── 底部热线栏已移除 ── */
.contact-bar {
  display: none !important;
}
.page {
  padding-bottom: calc(16px + var(--safe-bottom)) !important;
}

.site-footer {
  margin-top: 8px !important;
}
.site-footer__inner {
  padding: 8px 10px 6px !important;
}
.site-footer__grid {
  display: none !important;
}
.site-footer__bottom {
  padding-top: 0 !important;
  border-top: none !important;
}
.site-footer__brand { font-size: 12px !important; margin-bottom: 2px !important; }
.site-footer__desc,
.site-footer__grid p,
.site-footer__label { display: none !important; }

#about.about-section--compact,
.about-section {
  padding: 10px 12px !important;
  margin-bottom: 6px !important;
}
.about-section .about-text,
.about-text {
  font-size: 11px !important;
  line-height: 1.45 !important;
  margin-bottom: 6px !important;
}
.credential-tags { gap: 4px !important; margin-bottom: 4px !important; }
.cred-tag { font-size: 9px !important; padding: 2px 6px !important; }

#contact.contact-section,
#contact.contact-section--compact {
  display: none !important;
}
.contact-section .van-cell { display: none !important; }
.contact-compact__chips {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 8px !important;
  margin-bottom: 8px !important;
}
.contact-chip {
  border: 1px solid #e2e8f0;
  background: #f8fafc;
  border-radius: 10px;
  padding: 12px 10px;
  font-size: 13px;
  font-weight: 700;
  color: #1a5fd4;
}
.contact-chip--booking {
  background: linear-gradient(135deg, #1a5fd4, #0d3d7a);
  color: #fff !important;
  border-color: transparent;
  font-size: 15px;
}
.contact-compact__meta {
  font-size: 12px;
  color: #64748b;
  line-height: 1.4;
  margin-bottom: 8px;
}
.contact-btn--compact,
.contact-section .van-button--block {
  height: 44px !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  margin-top: 0 !important;
}

.services-section { margin-bottom: 6px !important; }
.section-intro { padding: 8px 10px !important; margin-bottom: 6px !important; }
.section-head h2 { font-size: 14px !important; }
.section-head p { font-size: 11px !important; }

.service-catalog--compact .van-cell { padding: 6px 10px !important; min-height: 32px !important; }
.service-catalog--compact .van-collapse-item__content { padding: 6px 10px 8px !important; }
