/* tecenet 首页首屏：厂商售后维保 / 全院设备维保 两块业务 Banner */
.kb { margin: 0 0 16px; }
.kb-track { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.kb-card { position: relative; display: flex; min-height: 230px; overflow: hidden; border-radius: 12px; color: #fff; text-decoration: none; transition: transform .2s, box-shadow .2s; }
.kb-card:hover { transform: translateY(-2px); box-shadow: 0 16px 32px -18px rgba(12,27,54,.6); }
.kb-maker { background: linear-gradient(120deg, #006df9 0%, #0a4fc4 100%); }
.kb-hosp { background: linear-gradient(120deg, #0c1b36 0%, #163a6e 100%); }
.kb-text { position: relative; z-index: 1; flex: 1 1 56%; padding: 26px 8px 24px 28px; }
.kb-title { margin: 0; font-size: 30px; font-weight: 800; line-height: 1.25; }
.kb-sub { margin: 6px 0 0; font-size: 16px; font-weight: 600; color: rgba(255,255,255,.9); white-space: nowrap; }
.kb-points { margin: 14px 0 0; padding: 0; list-style: none; font-size: 14.5px; line-height: 1.75; color: rgba(255,255,255,.88); }
.kb-points li { position: relative; padding-left: 14px; }
.kb-points li::before { content: ""; position: absolute; left: 0; top: .72em; width: 6px; height: 6px; border-radius: 50%; background: #9fe7c8; }
.kb-btn { display: inline-flex; align-items: center; gap: 6px; margin-top: 16px; padding: 7px 16px; border-radius: 999px; background: #fff; color: #10213f; font-size: 14px; font-weight: 600; }
.kb-btn::after { content: "→"; }
.kb-pic { flex: 0 0 40%; align-self: flex-end; margin: 22px 0 0; }
.kb-pic img { display: block; width: 100%; height: 100%; max-height: 220px; object-fit: cover; object-position: left top; border-radius: 10px 0 0 0; box-shadow: -8px -8px 24px -12px rgba(0,0,0,.35); }
.kb-dots { display: none; }

@media (max-width: 1100px) {
  .kb-title { font-size: 24px; }
  .kb-sub { white-space: normal; }
  .kb-pic { flex-basis: 34%; }
}
@media (max-width: 640px) {
  .kb { margin: 0 8px 12px; }
  .kb-track { display: flex; gap: 10px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
  .kb-track::-webkit-scrollbar { display: none; }
  .kb-card { flex: 0 0 100%; min-height: 0; scroll-snap-align: start; }
  .kb-card:hover { transform: none; box-shadow: none; }
  .kb-text { padding: 18px 18px 18px; }
  .kb-title { font-size: 22px; }
  .kb-sub { font-size: 14px; }
  .kb-points { margin-top: 8px; font-size: 13.5px; }
  .kb-points li:nth-child(3) { display: none; }
  .kb-btn { margin-top: 10px; padding: 5px 14px; font-size: 13px; }
  .kb-pic { display: none; }
  .kb-dots { display: flex; justify-content: center; gap: 8px; margin-top: 10px; }
  .kb-dots button { width: 8px; height: 8px; padding: 0; border: 0; border-radius: 4px; background: #d5dbe4; cursor: pointer; transition: width .2s, background .2s; }
  .kb-dots button[aria-current="true"] { width: 20px; background: #b81c24; }
}
@media (prefers-reduced-motion: reduce) {
  .kb-card, .kb-dots button { transition: none; }
}
