/*
 * 解决方案详情页的公共版式层。
 * 各页面保留自己的色彩、内容模块与场景视觉，仅共享内容宽度、留白和标题阅读尺度。
 */
:root {
  --solution-content-max: 1280px;
  --solution-gutter: 32px;
  --solution-section-space: 88px;
}

/* 静态方案包使用 all: revert 隔离 CMS 样式时会一并还原图标字体。
 * 在方案容器内恢复 Font Awesome，避免医院架构图等位置显示为方框。 */
.ai-product-page-shell .fa,
.ai-product-page-shell .fa::before {
  font-family: FontAwesome !important;
  font-style: normal;
  font-weight: normal;
}

/* 统一桌面内容基线，避免不同方案在大屏上出现忽宽忽窄。 */
.drzk-solution .drzk-wrap,
.campus-page .campus-wrap,
.park-page .park-wrap,
.hospital-solution .hospital-wrap,
.solution-ai-page .solution-ai-wrap {
  width: min(var(--solution-content-max), calc(100% - var(--solution-gutter) * 2));
  max-width: var(--solution-content-max);
  margin-right: auto;
  margin-left: auto;
}

.smart-building-page .building-container {
  width: min(var(--solution-content-max), calc(100% - var(--solution-gutter) * 2));
  max-width: var(--solution-content-max);
  margin-right: auto;
  margin-left: auto;
  padding-right: 0;
  padding-left: 0;
}

/* 早期独立方案使用 .wrap 作为内容容器，也收敛至相同宽度。 */
body .wrap {
  width: min(var(--solution-content-max), calc(100% - var(--solution-gutter) * 2));
  max-width: var(--solution-content-max);
  margin-right: auto;
  margin-left: auto;
  padding-right: 0;
  padding-left: 0;
}

/* 统一内容区节奏与标题可读宽度，不覆盖各方案的主题色。 */
.drzk-section,
.campus-section,
.park-section,
.hospital-section,
.building-section,
.solution-ai-section,
body .sec {
  padding-top: var(--solution-section-space);
  padding-bottom: var(--solution-section-space);
}

.drzk-title,
.campus-title,
.park-title,
.hospital-title,
.solution-ai-head,
.building-section-header {
  max-width: 780px;
}

.drzk-title h2,
.campus-title h2,
.park-title h2,
.hospital-title h2,
.solution-ai-head h2,
.building-section-title {
  letter-spacing: -.02em;
}

/* 标题区以内容容器中轴对齐；嵌在图文分栏里的说明标题保持原有左对齐。 */
.drzk-section > .drzk-wrap > .drzk-title,
.drzk-band > .drzk-wrap > .drzk-title,
.campus-section > .campus-wrap > .campus-title,
.park-section > .park-wrap > .park-title,
.hospital-section > .hospital-wrap > .hospital-title,
.hospital-value-band > .hospital-wrap > .hospital-title,
.solution-ai-section > .solution-ai-wrap > .solution-ai-head,
.building-section > .building-container > .building-section-header {
  margin-right: auto;
  margin-left: auto;
  text-align: center;
}

/* 六项痛点采用完整的 3 × 2 阵列，避免第二行大面积留白。 */
.smart-building-page .building-pain-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

/* 每个方案以统一咨询入口收口，位于方案内容末尾、网站页脚之前。 */
.solution-contact-cta {
  padding: 72px var(--solution-gutter);
  color: #fff;
  background: #0b356d;
}

.solution-contact-cta__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
  width: min(var(--solution-content-max), 100%);
  margin: 0 auto;
}

.solution-contact-cta h2 {
  margin: 0 0 10px;
  color: #fff;
  font-size: clamp(28px, 2.6vw, 38px);
  line-height: 1.28;
  font-weight: 700;
  letter-spacing: -.02em;
}

.solution-contact-cta p {
  max-width: 760px;
  margin: 0;
  color: rgba(224, 238, 255, .82);
  font-size: 16px;
  line-height: 1.8;
}

.solution-contact-cta a {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  gap: 13px;
  min-width: 156px;
  min-height: 48px;
  padding: 0 22px;
  border: 1px solid #fff;
  border-radius: 3px;
  background: #fff;
  color: #0b64d8;
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
  transition: transform .22s ease, background .22s ease, color .22s ease;
}

.solution-contact-cta a:hover,
.solution-contact-cta a:focus {
  transform: translateY(-2px);
  background: #ddecff;
  color: #073f96;
  text-decoration: none;
}

@media (max-width: 640px) {
  .solution-contact-cta {
    padding-top: 52px;
    padding-bottom: 52px;
  }

  .solution-contact-cta__inner {
    align-items: flex-start;
    flex-direction: column;
    gap: 26px;
  }

  .solution-contact-cta p { font-size: 15px; }
}

@media (max-width: 991.98px) {
  :root { --solution-section-space: 72px; }
}

@media (max-width: 640px) {
  :root {
    --solution-gutter: 16px;
    --solution-section-space: 56px;
  }

  .smart-building-page .building-container {
    padding-right: 0;
    padding-left: 0;
  }
}

/* 静态方案卡片：统一成低饱和的深蓝线性图标，移除渐变方块与内高光。 */
.ai-product-page-shell .drzk-card b,
.ai-product-page-shell .solution-ai-card b,
.drzk-solution .drzk-card b,
.solution-ai-page .solution-ai-card b {
  display: inline-flex !important;
  width: 52px !important;
  height: 52px !important;
  align-items: center;
  justify-content: center;
  margin-bottom: 22px !important;
  border: 1px solid #d7e5f3 !important;
  border-radius: 50% !important;
  background: #f4f8fc !important;
  box-shadow: none !important;
}

.ai-product-page-shell .drzk-card b::before,
.ai-product-page-shell .solution-ai-card b::before,
.drzk-solution .drzk-card b::before,
.solution-ai-page .solution-ai-card b::before {
  width: 25px !important;
  height: 25px !important;
  background: #155fa8 !important;
}

.ai-product-page-shell .drzk-card b::after,
.ai-product-page-shell .solution-ai-card b::after,
.drzk-solution .drzk-card b::after,
.solution-ai-page .solution-ai-card b::after {
  display: none !important;
}

/* 系统架构与流程模块也使用同一套线性承托，避免遗留实色方块。 */
.ai-product-page-shell .factory-stack i,
.ai-product-page-shell .arch-card > i,
.ai-product-page-shell .hospital-architecture-flow article > i,
.ai-product-page-shell .park-architecture article > i,
.factory-stack i,
.arch-card > i,
.hospital-architecture-flow article > i,
.park-architecture article > i {
  display: inline-flex !important;
  width: 52px !important;
  height: 52px !important;
  align-items: center;
  justify-content: center;
  border: 1px solid #d7e5f3 !important;
  border-radius: 50% !important;
  color: #155fa8 !important;
  background: #f4f8fc !important;
  box-shadow: none !important;
}

/* 深色流程卡保留白色线稿，以细描边圆形承托。 */
.ai-product-page-shell .drzk-step::before,
.ai-product-page-shell .solution-ai-step::before,
.drzk-solution .drzk-step::before,
.solution-ai-page .solution-ai-step::before {
  width: 32px !important;
  height: 32px !important;
  margin-bottom: 22px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #155fa8 !important;
  -webkit-mask: var(--drzk-step-icon, var(--solution-step-icon)) center / contain no-repeat !important;
  mask: var(--drzk-step-icon, var(--solution-step-icon)) center / contain no-repeat !important;
  box-shadow: none !important;
}

@media (max-width: 640px) {
  .ai-product-page-shell .drzk-card b,
  .ai-product-page-shell .solution-ai-card b,
  .drzk-solution .drzk-card b,
  .solution-ai-page .solution-ai-card b {
    width: 48px !important;
    height: 48px !important;
    margin-bottom: 18px !important;
  }
}
