/* 首页能力区重排：去图，2x2 卡片网格 */
.section.capabilities .capability-grid {
  display: grid !important; grid-template-columns: repeat(2, minmax(0,1fr)) !important;
  gap: 20px !important; margin-top: 40px !important;
}
.section.capabilities .capability {
  display: block !important; position: relative !important;
  padding: 30px 32px 26px !important; margin: 0 !important;
  background: #fff !important; border: 1px solid #E3E8F0 !important;
  border-radius: 14px !important; min-height: 0 !important;
  grid-template-columns: none !important; grid-template-areas: none !important;
  grid-column: span 1 !important; width: auto !important; max-width: 100% !important;
  transition: border-color .24s ease, box-shadow .24s ease, transform .24s ease;
}
.section.capabilities .capability:hover {
  border-color: #C9D6EE !important;
  box-shadow: 0 14px 40px rgba(18,58,143,.08) !important;
  transform: translateY(-2px);
}
.section.capabilities .capability img,
.section.capabilities .capability figure,
.section.capabilities .capability-media { display: none !important; }
.section.capabilities .capability-copy {
  max-width: none !important; width: 100% !important; padding: 0 !important; margin: 0 !important;
}
.section.capabilities .capability-index {
  font-family: var(--font-mono, "SFMono-Regular", Menlo, monospace) !important;
  font-size: 12px !important; letter-spacing: .1em !important;
  color: #2F6BFF !important; margin: 0 0 12px !important; display: block !important;
}
.section.capabilities .capability h3 {
  font-size: 20px !important; line-height: 1.38 !important; margin: 0 0 12px !important;
  color: #16233A !important; letter-spacing: -.01em !important;
}
.section.capabilities .capability p {
  font-size: 15px !important; line-height: 1.78 !important; color: #5A6577 !important; margin: 0 0 16px !important;
}
.section.capabilities .capability-points {
  list-style: none !important; padding: 0 !important; margin: 0 !important;
  display: flex !important; flex-direction: column !important; gap: 8px !important;
  border-top: 1px solid #EEF1F6 !important; padding-top: 15px !important;
}
.section.capabilities .capability-points li {
  font-size: 13.5px !important; line-height: 1.6 !important; color: #6B7689 !important;
  display: flex !important; align-items: flex-start !important; gap: 9px !important; margin: 0 !important;
}
.section.capabilities .capability-points li::before {
  content: ""; width: 4px; height: 4px; border-radius: 50%; background: #2F6BFF;
  flex: 0 0 auto; margin-top: 8px;
}
/* 数据闭环卡：内部横向流程压成块 */
.section.capabilities .capability-loop { grid-column: span 2 !important; }
.section.capabilities .capability-loop .loop-time,
.section.capabilities .capability-loop .loop-flow { margin-bottom: 14px !important; }
.section.capabilities .capability-loop .loop-flow {
  display: flex !important; flex-wrap: wrap !important; gap: 8px 10px !important;
}
.section.capabilities .capability-loop .loop-step {
  padding: 9px 14px !important; background: #F4F7FD !important; border: 1px solid #E1E9F8 !important;
  border-radius: 8px !important; font-size: 13px !important; color: #2F4A7A !important;
}
@media (max-width: 768px) {
  .section.capabilities .capability-grid { grid-template-columns: 1fr !important; gap: 14px !important; margin-top: 24px !important; }
  .section.capabilities .capability { padding: 20px 18px 18px !important; border-radius: 12px !important; }
  .section.capabilities .capability-loop { grid-column: span 1 !important; }
  .section.capabilities .capability h3 { font-size: 17px !important; }
  .section.capabilities .capability p { font-size: 15px !important; }
  .section.capabilities .capability-points li { font-size: 14px !important; }
}

/* 架构区：去掉中间突兀的竖版摄影图，示意图占满右栏 */
.section.architecture .architecture-board {
  display: block !important; max-width: 100% !important;
}
.section.architecture figure.architecture-photo,
.section.architecture .architecture-photo { display: none !important; }
.section.architecture .private-boundary {
  width: 100% !important; max-width: 100% !important; margin: 0 !important;
  padding: 28px 30px !important; box-sizing: border-box !important;
}
@media (max-width: 768px) {
  .section.architecture .private-boundary { padding: 20px 18px !important; }
}
