/* 数甄科技官网 — 科技蓝主题 + 三大板块配色 */
:root {
  /* TEA 科技蓝色板 */
  --tea-color-palette-blue-1: #1d2852;
  --tea-color-palette-blue-2: #062e9a;
  --tea-color-palette-blue-3: #305596;
  --tea-color-palette-blue-4: #084dcd;
  --tea-color-palette-blue-5: #0957d9;
  --tea-color-palette-blue-6: #2174ff;
  --tea-color-palette-blue-7: #478dff;
  --tea-color-palette-blue-8: #69a1ff;
  --tea-color-palette-blue-9: #8cb8ff;
  --tea-color-palette-blue-10: #abcaff;
  --tea-color-palette-blue-rgb: 105, 161, 255;
  /* 首屏主色 */
  --hero-primary: #2174ff;
  --hero-primary-rgb: 33, 116, 255;

  --dz-primary: #0d5fdb;
  --dz-primary-dark: #0847a8;
  --dz-primary-light: #3d8ef5;
  --dz-accent: #00c8ff;
  --dz-dark: #0a1628;
  --dz-dark-soft: #0f2744;
  --dz-text: #1a2b42;
  --dz-text-muted: #5a6f8a;
  --dz-bg: #f4f8ff;
  --dz-bg-card: #ffffff;
  --dz-border: rgba(13, 95, 219, 0.12);
  --dz-gradient: linear-gradient(135deg, #0a5fd4 0%, #1a7fff 50%, #00b4e6 100%);
  --dz-hero-gradient: linear-gradient(160deg, #e8f2ff 0%, #f8fbff 40%, #eef6ff 100%);
  --dz-shadow: 0 8px 32px rgba(13, 95, 219, 0.12);
  --dz-radius: 12px;
  /* 数字医疗 · 青绿 */
  --dz-medical: #00c8c8;
  --dz-medical-dark: #00a0a0;
  --dz-medical-light: #33d8d8;
  --dz-medical-gradient: linear-gradient(135deg, #00a8a8 0%, #00c8c8 50%, #40e0e0 100%);
  --dz-medical-bg: #e8fafa;
  --dz-medical-border: rgba(0, 200, 200, 0.18);
  --dz-medical-shadow: 0 8px 32px rgba(0, 200, 200, 0.12);
  /* 数字政务 · 中国红 */
  --dz-gov: #de2910;
  --dz-gov-dark: #b71c1c;
  --dz-gov-light: #ef5350;
  --dz-gov-gradient: linear-gradient(135deg, #b71c1c 0%, #de2910 50%, #e53935 100%);
  --dz-gov-bg: #fff5f5;
  --dz-gov-border: rgba(222, 41, 16, 0.15);
  --dz-gov-shadow: 0 8px 32px rgba(222, 41, 16, 0.12);
  /* 数字城市 · 科技蓝 */
  --dz-city: #0d5fdb;
  --dz-city-dark: #0847a8;
  --dz-city-light: #3d8ef5;
  --dz-city-gradient: linear-gradient(135deg, #0a5fd4 0%, #1a7fff 50%, #00b4e6 100%);
  --dz-city-bg: #f4f8ff;
  --dz-city-border: rgba(13, 95, 219, 0.12);
  --dz-city-shadow: 0 8px 32px rgba(13, 95, 219, 0.12);
}

html {
  scroll-behavior: auto;
  scroll-padding-top: var(--dz-nav-height, 72px);
  scrollbar-gutter: stable;
  overflow-x: clip;
}

body {
  color: var(--dz-text);
  font-family: "SourceHanSansCN-Regular";
  overflow-x: clip;
}

/* AOS 未初始化前保持可见，避免滚动时布局突变 */
body:not(.aos-init) [data-aos] {
  opacity: 1 !important;
  transform: none !important;
  transition: none !important;
}

/* 覆盖主题色为科技蓝 */
.text-primary,
.text-success { color: var(--dz-primary) !important; }
.bg-primary { background: var(--dz-gradient) !important; }
.btn-primary {
  background: var(--dz-gradient) !important;
  border: none !important;
  box-shadow: 0 4px 16px rgba(13, 95, 219, 0.35);
}
.btn-primary:hover {
  filter: brightness(1.08);
  transform: translateY(-1px);
}
.btn-outline-primary {
  color: var(--dz-primary) !important;
  border-color: var(--dz-primary) !important;
}
.btn-outline-primary:hover {
  background: var(--dz-primary) !important;
  color: #fff !important;
}

/* 导航 */
.dz-navbar {
  /* background: rgba(255, 255, 255, 0.95) !important;
  backdrop-filter: blur(12px);
  box-shadow: 0 1px 0 var(--dz-border); */
  transition: box-shadow 0.3s;
  z-index: 1030;
}
.dz-navbar.scrolled {
  box-shadow: 0 4px 24px rgba(13, 95, 219, 0.1);
}
.dz-navbar .navbar-brand span:last-child {
  font-size: 1.15rem;
  letter-spacing: 0.02em;
  color: var(--dz-dark);
}
.dz-navbar .nav-link {
  color: var(--dz-text) !important;
  font-weight: 500;
  padding: 0.5rem 1rem !important;
  transition: color 0.2s, background 0.2s;
  line-height: 1.8rem;
}
.dz-navbar .nav-link:hover,
.dz-navbar .nav-link.active {
  color: #fff !important;
  background: var(--dz-primary) !important;
}
.dz-navbar .dz-nav-megamenu-toggle::after {
  display: none;
}
.dz-navbar .dz-nav-megamenu-toggle {
  display: inline-flex;
  align-items: center;
  gap: 0.2rem;
}
.dz-navbar .dz-nav-megamenu-toggle .dz-nav-chevron {
  font-size: 1rem;
  opacity: 0.55;
  transition: transform 0.25s ease, opacity 0.2s;
}
.dz-navbar .dz-megamenu-dropdown.is-open > .dz-nav-megamenu-toggle {
  color: #fff !important;
  background: var(--dz-primary) !important;
}
.dz-navbar .dz-megamenu-dropdown.is-open > .dz-nav-megamenu-toggle .dz-nav-chevron {
  transform: rotate(180deg);
  opacity: 1;
}

/* 固定导航偏移 */
.pt-nav-offset {
  padding-top: 5.5rem;
}
@media (min-width: 992px) {
  .pt-nav-offset { padding-top: 6.5rem; }
}

/* Hero */
.dz-hero {
  background: var(--dz-hero-gradient);
  position: relative;
  overflow: hidden;
  min-height: 88vh;
  display: flex;
  align-items: center;
  background-image: url('../assets/images/E4m8Q1.jpg');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.dz-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 80% 60% at 70% 20%, rgba(13, 95, 219, 0.08) 0%, transparent 60%),
    radial-gradient(ellipse 50% 40% at 10% 80%, rgba(0, 200, 255, 0.06) 0%, transparent 50%);
  pointer-events: none;
}
.dz-hero-grid {
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(13, 95, 219, 0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(13, 95, 219, 0.04) 1px, transparent 1px);
  background-size: 48px 48px;
  mask-image: linear-gradient(180deg, rgba(0,0,0,0.4) 0%, transparent 70%);
  pointer-events: none;
}
.dz-hero h1 {
  font-size: clamp(1.75rem, 5vw, 3rem);
  font-weight: 800;
  line-height: 1.25;
  color: var(--dz-dark);
}
.dz-hero h1 .highlight {
  background: var(--dz-gradient);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.dz-hero .lead {
  color: var(--dz-text-muted);
  font-size: clamp(0.95rem, 2.5vw, 1.15rem);
  line-height: 1.75;
}
.dz-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.35rem 0.85rem;
  background: rgba(13, 95, 219, 0.08);
  border: 1px solid var(--dz-border);
  border-radius: 100px;
  font-size: 0.8rem;
  color: var(--dz-primary);
  font-weight: 600;
}
.dz-terminal {
  background: var(--dz-dark) !important;
  border: 1px solid rgba(61, 142, 245, 0.25);
  border-radius: var(--dz-radius);
  box-shadow: var(--dz-shadow), 0 0 0 1px rgba(0, 200, 255, 0.05);
}
.dz-terminal .card-header {
  background: rgba(255, 255, 255, 0.04);
  border-color: rgba(255, 255, 255, 0.08) !important;
}
.dz-pill-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem 1rem;
  list-style: none;
  padding: 0;
  margin: 1.25rem 0 0;
}
.dz-pill-list li {
  display: flex;
  align-items: center;
  gap: 0.35rem;
  font-size: 0.85rem;
  color: var(--dz-text-muted);
  font-weight: 500;
}
.dz-pill-list i {
  color: var(--dz-primary);
}

/* ========== Hero · AI 科技风 · TEA 科技蓝 ========== */
.dz-hero.dz-hero--tech {
  --hero-b1: var(--tea-color-palette-blue-1);
  --hero-b2: var(--tea-color-palette-blue-2);
  --hero-b3: var(--tea-color-palette-blue-3);
  --hero-b4: var(--tea-color-palette-blue-4);
  --hero-b5: var(--tea-color-palette-blue-5);
  --hero-b6: var(--tea-color-palette-blue-6);
  --hero-b7: var(--tea-color-palette-blue-7);
  --hero-b8: var(--tea-color-palette-blue-8);
  --hero-b9: var(--tea-color-palette-blue-9);
  --hero-b10: var(--tea-color-palette-blue-10);
  --hero-b-rgb: var(--hero-primary-rgb);
  --hero-accent: var(--hero-primary);
  background: linear-gradient(165deg, var(--hero-b1) 0%, var(--hero-b2) 36%, var(--hero-b3) 70%, var(--hero-b1) 100%);
  background-image: none;
  min-height: clamp(680px, 92svh, 960px);
  padding-bottom: 4.25rem;
  overflow: hidden;
  overflow-anchor: none;
}
.dz-hero.dz-hero--tech::before {
  background:
    radial-gradient(ellipse 70% 50% at 75% 15%, rgba(var(--hero-b-rgb), 0.28) 0%, transparent 55%),
    radial-gradient(ellipse 45% 35% at 15% 75%, rgba(33, 116, 255, 0.18) 0%, transparent 50%);
}
.dz-hero.dz-hero--tech .dz-hero-grid {
  background-image:
    linear-gradient(rgba(var(--hero-b-rgb), 0.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(var(--hero-b-rgb), 0.08) 1px, transparent 1px);
  background-size: 56px 56px;
  mask-image: radial-gradient(ellipse 95% 90% at 50% 45%, rgba(0,0,0,0.9) 0%, transparent 78%);
  animation: dz-grid-drift 24s linear infinite;
}
@keyframes dz-grid-drift {
  0% { background-position: 0 0; }
  100% { background-position: 56px 56px; }
}
.dz-hero-canvas {
  position: absolute;
  inset: 0;
  width: 100% !important;
  height: 100% !important;
  pointer-events: none;
  opacity: 0.62;
  z-index: 0;
}
.dz-hero-orbs {
  position: absolute;
  inset: 0;
  pointer-events: none;
  overflow: hidden;
  z-index: 0;
}
.dz-hero-orb {
  position: absolute;
  border-radius: 50%;
  filter: blur(60px);
  animation: dz-orb-float 12s ease-in-out infinite;
}
.dz-hero-orb--1 {
  width: 420px;
  height: 420px;
  background: rgba(9, 87, 217, 0.38);
  top: -8%;
  right: -5%;
}
.dz-hero-orb--2 {
  width: 280px;
  height: 280px;
  background: rgba(var(--tea-color-palette-blue-rgb), 0.22);
  bottom: 10%;
  left: -5%;
  animation-delay: -4s;
}
.dz-hero-orb--3 {
  width: 180px;
  height: 180px;
  background: rgba(71, 141, 255, 0.28);
  top: 45%;
  left: 42%;
  animation-delay: -8s;
}
@keyframes dz-orb-float {
  0%, 100% { transform: translate(0, 0) scale(1); }
  50% { transform: translate(20px, -24px) scale(1.06); }
}
.dz-hero-scanline {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 1;
  background: repeating-linear-gradient(
    0deg,
    transparent,
    transparent 2px,
    rgba(var(--tea-color-palette-blue-rgb), 0.018) 2px,
    rgba(var(--tea-color-palette-blue-rgb), 0.018) 4px
  );
  opacity: 0.6;
}
.dz-hero.dz-hero--tech h1 {
  color: #fff;
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
}
.dz-hero-line {
  font-size: clamp(1.1rem, 3vw, 1.35rem);
  font-weight: 600;
  letter-spacing: 0.08em;
  color: rgba(255, 255, 255, 0.72);
  text-transform: uppercase;
}
.dz-hero-gradient-text {
  font-size: clamp(1.85rem, 5.5vw, 3.1rem);
  font-weight: 800;
  line-height: 1.2;
  background: linear-gradient(120deg, #fff 0%, var(--tea-color-palette-blue-10) 28%, var(--hero-primary) 55%, var(--tea-color-palette-blue-7) 100%);
  background-size: 200% auto;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  animation: dz-text-shimmer 6s ease-in-out infinite;
}
@keyframes dz-text-shimmer {
  0%, 100% { background-position: 0% center; }
  50% { background-position: 100% center; }
}
.dz-hero.dz-hero--tech .lead {
  color: rgba(255, 255, 255, 0.68);
}
.dz-hero.dz-hero--tech .lead strong {
  color: var(--tea-color-palette-blue-10);
  font-weight: 600;
}
.dz-hero.dz-hero--tech .dz-badge--ai {
  background: rgba(var(--tea-color-palette-blue-rgb), 0.12);
  border-color: rgba(var(--tea-color-palette-blue-rgb), 0.42);
  color: var(--tea-color-palette-blue-9);
  box-shadow: 0 0 20px rgba(var(--tea-color-palette-blue-rgb), 0.15);
}
.dz-badge--ai {
  background: rgba(var(--tea-color-palette-blue-rgb), 0.12);
  border-color: rgba(var(--tea-color-palette-blue-rgb), 0.42);
  color: var(--tea-color-palette-blue-9);
  box-shadow: 0 0 20px rgba(var(--tea-color-palette-blue-rgb), 0.15);
}
.dz-ai-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #00ff88;
  box-shadow: 0 0 8px #00ff88;
  animation: dz-ai-blink 2s ease-in-out infinite;
  flex-shrink: 0;
}
@keyframes dz-ai-blink {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: 0.5; transform: scale(0.85); }
}
.dz-tech-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.dz-hero.dz-hero--tech .dz-tech-chip {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.45rem 0.95rem;
  font-size: 0.8rem;
  font-weight: 600;
  color: var(--tea-color-palette-blue-10) !important;
  -webkit-text-fill-color: var(--tea-color-palette-blue-10);
  background: linear-gradient(135deg, rgba(29, 40, 82, 0.85) 0%, rgba(6, 46, 154, 0.55) 100%);
  border: 1px solid rgba(var(--tea-color-palette-blue-rgb), 0.45);
  border-radius: 100px;
  backdrop-filter: blur(10px);
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.25), inset 0 1px 0 rgba(var(--tea-color-palette-blue-rgb), 0.15);
  transition: border-color 0.25s, box-shadow 0.25s, transform 0.25s, color 0.25s;
  position: relative;
  overflow: hidden;
}
.dz-hero.dz-hero--tech .dz-tech-chip::before {
  content: "";
  position: absolute;
  inset: -1px;
  border-radius: inherit;
  padding: 1px;
  background: linear-gradient(135deg, rgba(var(--tea-color-palette-blue-rgb), 0.55), transparent 40%, rgba(33, 116, 255, 0.4));
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  opacity: 0.65;
  animation: dz-chip-border-spin 5s linear infinite;
}
.dz-hero.dz-hero--tech .dz-tech-chip i {
  color: var(--hero-primary) !important;
  font-size: 0.95rem;
  filter: drop-shadow(0 0 5px rgba(var(--hero-primary-rgb), 0.55));
}
.dz-hero.dz-hero--tech .dz-tech-chip:hover {
  color: #fff !important;
  -webkit-text-fill-color: #fff;
  border-color: var(--tea-color-palette-blue-7);
  box-shadow: 0 0 22px rgba(var(--tea-color-palette-blue-rgb), 0.38), inset 0 0 16px rgba(var(--tea-color-palette-blue-rgb), 0.1);
  transform: translateY(-2px) scale(1.02);
}
.dz-hero.dz-hero--tech .btn-primary {
  background: linear-gradient(135deg, var(--tea-color-palette-blue-4) 0%, var(--hero-primary) 55%, var(--tea-color-palette-blue-7) 100%) !important;
  border: none !important;
}
.dz-hero.dz-hero--tech .btn-primary:hover {
  filter: brightness(1.08);
  box-shadow: 0 6px 28px rgba(var(--hero-primary-rgb), 0.45) !important;
}
.dz-hero.dz-hero--tech .dz-btn-glow {
  box-shadow: 0 4px 24px rgba(var(--hero-primary-rgb), 0.55), 0 0 48px rgba(var(--hero-primary-rgb), 0.22) !important;
}
.dz-hero.dz-hero--tech .dz-btn-glass:hover {
  border-color: var(--tea-color-palette-blue-7) !important;
}
@keyframes dz-chip-border-spin {
  0% { filter: hue-rotate(0deg); opacity: 0.5; }
  50% { opacity: 0.85; }
  100% { filter: hue-rotate(8deg); opacity: 0.5; }
}
.dz-tech-chip {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.4rem 0.85rem;
  font-size: 0.8rem;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.85);
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(0, 200, 255, 0.22);
  border-radius: 100px;
  backdrop-filter: blur(8px);
  transition: border-color 0.25s, box-shadow 0.25s, transform 0.25s;
}
.dz-tech-chip i {
  color: var(--dz-accent);
  font-size: 0.95rem;
}
.dz-tech-chip:hover {
  border-color: rgba(0, 200, 255, 0.55);
  box-shadow: 0 0 16px rgba(0, 200, 255, 0.2);
  transform: translateY(-1px);
}
.dz-btn-glow {
  box-shadow: 0 4px 24px rgba(13, 95, 219, 0.5), 0 0 40px rgba(0, 200, 255, 0.15) !important;
  position: relative;
  overflow: hidden;
}
.dz-btn-glow::after {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 60%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.25), transparent);
  transition: left 0.5s;
}
.dz-btn-glow:hover::after {
  left: 120%;
}
.dz-btn-glass {
  color: rgba(255, 255, 255, 0.9) !important;
  border-color: rgba(255, 255, 255, 0.35) !important;
  background: rgba(255, 255, 255, 0.06) !important;
  backdrop-filter: blur(8px);
}
.dz-btn-glass:hover {
  background: rgba(255, 255, 255, 0.14) !important;
  color: #fff !important;
  border-color: rgba(0, 200, 255, 0.5) !important;
}

/* AI 控制台 · TEA 科技蓝 */
.dz-ai-console {
  background: rgba(29, 40, 82, 0.88);
  border: 1px solid rgba(var(--tea-color-palette-blue-rgb), 0.32);
  border-radius: 16px;
  overflow: hidden;
  box-shadow:
    0 24px 64px rgba(0, 0, 0, 0.45),
    0 0 0 1px rgba(33, 116, 255, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.06);
  backdrop-filter: blur(16px);
  min-height: 540px;
  animation: dz-console-in 0.8s cubic-bezier(0.22, 1, 0.36, 1) backwards;
}
@keyframes dz-console-in {
  from { opacity: 0; transform: translateY(20px) scale(0.98); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}
.dz-ai-console-head {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.75rem 1rem;
  background: rgba(255, 255, 255, 0.04);
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  flex-wrap: wrap;
}
.dz-ai-console-dots span {
  display: inline-block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  margin-right: 5px;
}
.dz-ai-console-dots span:nth-child(1) { background: #ff5f57; }
.dz-ai-console-dots span:nth-child(2) { background: #febc2e; }
.dz-ai-console-dots span:nth-child(3) { background: #28c840; margin-right: 0; }
.dz-ai-console-title {
  flex: 1;
  font-size: 0.8rem;
  color: rgba(255, 255, 255, 0.55);
  font-weight: 500;
}
.dz-ai-console-title i {
  margin-right: 0.3rem;
  color: var(--hero-primary);
}
.dz-ai-status {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  color: #00ff88;
}
.dz-ai-status #aiStatusText {
  display: inline-block;
  transition: opacity 0.25s, transform 0.25s;
}
.dz-ai-status #aiStatusText.is-fading {
  opacity: 0;
  transform: translateY(-4px);
}
.dz-ai-pulse {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #00ff88;
  box-shadow: 0 0 6px #00ff88;
  animation: dz-ai-blink 1.5s ease-in-out infinite;
}
.dz-ai-console-body {
  padding: 1rem 1.15rem 1.15rem;
  min-height: 480px;
  display: flex;
  flex-direction: column;
}
.dz-ai-viz {
  position: relative;
  margin-bottom: 0.85rem;
  padding: 0.65rem 0.65rem 0.55rem;
  background: rgba(var(--tea-color-palette-blue-rgb), 0.06);
  border: 1px solid rgba(var(--tea-color-palette-blue-rgb), 0.18);
  border-radius: 10px;
  flex-shrink: 0;
  min-height: 188px;
  overflow: visible;
  display: flex;
  flex-direction: column;
}
.dz-ai-viz-inner {
  position: relative;
  flex: 1;
  min-height: 132px;
  border-radius: 6px;
  overflow: hidden;
}
.dz-ai-viz-canvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  opacity: 0.45;
  z-index: 0;
}
.dz-ai-viz-svg {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 132px;
  display: block;
}
.dz-ai-viz-tags {
  position: relative;
  bottom: auto;
  right: auto;
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  justify-content: flex-end;
  margin-top: 0.5rem;
  z-index: 2;
}
.dz-ai-node {
  fill: rgba(9, 87, 217, 0.55);
  stroke: rgba(var(--tea-color-palette-blue-rgb), 0.75);
  stroke-width: 1.5;
}
.dz-ai-node.n-core {
  fill: rgba(var(--hero-primary-rgb), 0.75);
  stroke: var(--hero-primary);
  stroke-width: 2;
  animation: dz-node-pulse 3s ease-in-out infinite;
}
.dz-ai-node.n1, .dz-ai-node.n2, .dz-ai-node.n3,
.dz-ai-node.n4, .dz-ai-node.n5, .dz-ai-node.n6,
.dz-ai-node.n7, .dz-ai-node.n8 {
  animation: dz-node-pulse 3s ease-in-out infinite;
}
.dz-ai-node.n1 { animation-delay: 0.4s; }
.dz-ai-node.n2 { animation-delay: 0.8s; }
.dz-ai-node.n3 { animation-delay: 1.2s; }
.dz-ai-node.n4 { animation-delay: 1.6s; }
.dz-ai-node.n5 { animation-delay: 2s; }
.dz-ai-node.n6 { animation-delay: 2.4s; }
.dz-ai-node.n7 { animation-delay: 1s; }
.dz-ai-node.n8 { animation-delay: 1.8s; }
@keyframes dz-node-pulse {
  0%, 100% { opacity: 0.7; }
  50% { opacity: 1; filter: drop-shadow(0 0 4px rgba(var(--tea-color-palette-blue-rgb), 0.85)); }
}
.dz-ai-link {
  stroke-dasharray: 6 4;
  animation: dz-link-flow 2.5s linear infinite;
}
@keyframes dz-link-flow {
  0% { stroke-dashoffset: 0; opacity: 0.4; }
  50% { opacity: 0.9; }
  100% { stroke-dashoffset: -20; opacity: 0.4; }
}
.dz-ai-viz-label {
  fill: rgba(255, 255, 255, 0.85);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.05em;
}
.dz-ai-viz-tags span {
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  padding: 0.15rem 0.45rem;
  color: var(--tea-color-palette-blue-9);
  background: rgba(var(--tea-color-palette-blue-rgb), 0.12);
  border: 1px solid rgba(var(--tea-color-palette-blue-rgb), 0.32);
  border-radius: 4px;
  animation: dz-tag-pop 0.5s ease backwards, dz-tag-glow 3s ease-in-out infinite;
}
.dz-ai-viz-tags span:nth-child(1) { animation-delay: 0.1s, 0s; }
.dz-ai-viz-tags span:nth-child(2) { animation-delay: 0.2s, 0.4s; }
.dz-ai-viz-tags span:nth-child(3) { animation-delay: 0.3s, 0.8s; }
.dz-ai-viz-tags span:nth-child(4) { animation-delay: 0.4s, 1.2s; }
.dz-ai-viz-tags span:nth-child(5) { animation-delay: 0.5s, 1.6s; }
@keyframes dz-tag-pop {
  from { opacity: 0; transform: scale(0.8) translateY(4px); }
  to { opacity: 1; transform: scale(1) translateY(0); }
}
@keyframes dz-tag-glow {
  0%, 100% { box-shadow: none; border-color: rgba(var(--tea-color-palette-blue-rgb), 0.32); }
  50% { box-shadow: 0 0 10px rgba(var(--tea-color-palette-blue-rgb), 0.38); border-color: rgba(var(--tea-color-palette-blue-rgb), 0.55); }
}
.dz-ai-log {
  display: block;
  color: rgba(255, 255, 255, 0.5) !important;
  line-height: 1.65;
  font-size: 0.78rem !important;
  margin: 0;
  white-space: normal;
  word-break: break-word;
  font-family: inherit;
}
.dz-ai-log .text-info {
  color: var(--bs-info, #5ec8ff) !important;
}
.dz-ai-log .text-success {
  color: var(--bs-success, #00ff88) !important;
}
.dz-ai-log .text-warning {
  color: var(--bs-warning, #ffd166) !important;
}
/* Typed.js 光标 */
.dz-ai-log-viewport .typed-cursor {
  color: var(--hero-primary);
  opacity: 1;
  text-shadow: 0 0 8px rgba(var(--hero-primary-rgb), 0.7);
}
.dz-ai-log-viewport .typed-cursor.typed-cursor--blink {
  animation: dz-cursor-blink 1s step-end infinite;
}
.dz-ai-metrics {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.5rem;
  flex-shrink: 0;
  margin-top: auto;
}
.dz-ai-metric {
  position: relative;
  overflow: hidden;
  text-align: center;
  padding: 0.65rem 0.4rem;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 8px;
  transition: border-color 0.3s, transform 0.3s;
}
.dz-ai-metric.is-pulse {
  animation: dz-metric-pulse 0.45s ease;
}
@keyframes dz-metric-pulse {
  0%, 100% { transform: scale(1); border-color: rgba(255, 255, 255, 0.08); }
  50% { transform: scale(1.03); border-color: rgba(var(--tea-color-palette-blue-rgb), 0.38); }
}
.dz-ai-metric strong {
  display: block;
  font-size: 1.25rem;
  font-weight: 800;
  color: var(--hero-primary);
  line-height: 1.2;
}
.dz-ai-metric span {
  font-size: 0.68rem;
  color: rgba(255, 255, 255, 0.45);
  margin-top: 0.15rem;
  display: block;
}

/* Hero 底部滚动条 */
.dz-ai-ticker {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  overflow: hidden;
  min-height: 48px;
  border-top: 1px solid rgba(var(--hero-primary-rgb), 0.28);
  background: linear-gradient(180deg, rgba(29, 40, 82, 0.72) 0%, rgba(6, 46, 154, 0.45) 100%);
  backdrop-filter: blur(10px);
  z-index: 2;
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 6%, #000 94%, transparent 100%);
  mask-image: linear-gradient(90deg, transparent 0%, #000 6%, #000 94%, transparent 100%);
}
.dz-ai-ticker::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 3px;
  background: linear-gradient(180deg, transparent, var(--hero-primary), transparent);
  opacity: 0.85;
  animation: dz-ticker-edge-pulse 2.5s ease-in-out infinite;
  z-index: 1;
  pointer-events: none;
}
@keyframes dz-ticker-edge-pulse {
  0%, 100% { opacity: 0.35; box-shadow: none; }
  50% { opacity: 1; box-shadow: 0 0 12px var(--hero-primary); }
}
.dz-ai-ticker-track {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 2.75rem;
  width: max-content;
  min-height: 48px;
  padding: 0.8rem 2rem;
  white-space: nowrap;
  will-change: transform;
  animation: dz-ticker-scroll 36s linear infinite;
}
.dz-ai-ticker:hover .dz-ai-ticker-track {
  animation-play-state: paused;
}
.dz-ai-ticker-track span {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  flex-shrink: 0;
  font-size: 0.78rem;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.58);
  letter-spacing: 0.03em;
  line-height: 1;
  transition: color 0.25s, text-shadow 0.25s, transform 0.25s;
}
.dz-ai-ticker-track span:hover {
  color: #fff;
  text-shadow: 0 0 14px rgba(var(--hero-primary-rgb), 0.55);
  transform: translateY(-1px);
}
.dz-ai-ticker-track span i,
.dz-ai-marquee-track span i {
  display: inline-block;
  min-width: 1.1em;
  font-size: 1.05rem;
  line-height: 1;
  flex-shrink: 0;
  vertical-align: middle;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  color: var(--hero-primary);
  filter: drop-shadow(0 0 6px rgba(var(--hero-primary-rgb), 0.45));
  transition: transform 0.25s, filter 0.25s;
}
.dz-ai-marquee-track span i {
  font-size: 0.95rem;
  animation: dz-marquee-icon-glow 3s ease-in-out infinite;
}
.dz-ai-ticker-track span:hover i {
  transform: scale(1.12);
  filter: drop-shadow(0 0 10px rgba(var(--hero-primary-rgb), 0.75));
}
@keyframes dz-ticker-scroll {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}
.dz-promo-carousel.carousel-fade .carousel-item {
  transition: opacity 0.8s ease-in-out;
}
.dz-promo-carousel.carousel-fade .carousel-item.active .dz-promo-title,
.dz-promo-carousel.carousel-fade .carousel-item.active .dz-promo-desc,
.dz-promo-carousel.carousel-fade .carousel-item.active .dz-promo-tags,
.dz-promo-carousel.carousel-fade .carousel-item.active .dz-promo-actions {
  animation: dz-promo-content-in 0.7s ease backwards;
}
.dz-promo-carousel.carousel-fade .carousel-item.active .dz-promo-desc { animation-delay: 0.08s; }
.dz-promo-carousel.carousel-fade .carousel-item.active .dz-promo-tags { animation-delay: 0.16s; }
.dz-promo-carousel.carousel-fade .carousel-item.active .dz-promo-actions { animation-delay: 0.24s; }
.dz-promo-carousel.carousel-fade .carousel-item.active .dz-promo-visual-wrap {
  animation: dz-promo-visual-in 0.8s cubic-bezier(0.22, 1, 0.36, 1) backwards 0.1s;
}
@keyframes dz-promo-content-in {
  from { opacity: 0; transform: translateY(16px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes dz-promo-visual-in {
  from { opacity: 0; transform: scale(0.88); }
  to { opacity: 1; transform: scale(1); }
}

/* Promo Strip · 跑马灯 + 链接 */
.dz-ai-marquee {
  position: relative;
  overflow: hidden;
  width: 100%;
  background: linear-gradient(90deg, rgba(29, 40, 82, 0.95) 0%, rgba(6, 46, 154, 0.55) 50%, rgba(29, 40, 82, 0.95) 100%);
  border-bottom: 1px solid rgba(var(--hero-primary-rgb), 0.22);
}
.dz-ai-marquee::before,
.dz-ai-marquee::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 48px;
  z-index: 2;
  pointer-events: none;
}
.dz-ai-marquee::before {
  left: 0;
  background: linear-gradient(90deg, rgba(29, 40, 82, 1) 0%, transparent 100%);
}
.dz-ai-marquee::after {
  right: 0;
  background: linear-gradient(270deg, rgba(29, 40, 82, 1) 0%, transparent 100%);
}
.dz-ai-marquee-track {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 0;
  width: max-content;
  min-height: 42px;
  padding: 0.65rem 0;
  white-space: nowrap;
  will-change: transform;
  animation: dz-marquee-scroll 32s linear infinite;
}
.dz-ai-marquee:hover .dz-ai-marquee-track {
  animation-play-state: paused;
}
.dz-ai-marquee-track span {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  flex-shrink: 0;
  padding: 0 1.35rem;
  font-size: 0.74rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  color: rgba(255, 255, 255, 0.55);
  line-height: 1;
  border-right: 1px solid rgba(var(--hero-primary-rgb), 0.18);
  transition: color 0.25s, text-shadow 0.25s;
}
.dz-ai-marquee-track span:last-child {
  border-right: none;
}
.dz-ai-marquee-track span:nth-child(odd) i {
  animation-delay: -1s;
}
.dz-ai-marquee-track span:nth-child(8n+1) i { animation-delay: 0s; }
.dz-ai-marquee-track span:nth-child(8n+3) i { animation-delay: -0.8s; }
.dz-ai-marquee-track span:nth-child(8n+5) i { animation-delay: -1.6s; }
.dz-ai-marquee-track span:nth-child(8n+7) i { animation-delay: -2.4s; }
.dz-ai-marquee-track span:hover {
  color: rgba(255, 255, 255, 0.92);
  text-shadow: 0 0 12px rgba(var(--hero-primary-rgb), 0.45);
}
@keyframes dz-marquee-scroll {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}
@keyframes dz-marquee-icon-glow {
  0%, 100% { filter: drop-shadow(0 0 4px rgba(var(--hero-primary-rgb), 0.35)); opacity: 0.85; }
  50% { filter: drop-shadow(0 0 10px rgba(var(--hero-primary-rgb), 0.75)); opacity: 1; }
}

/* ========== Promo · 科技增强 ========== */
.dz-promo-tech-grid {
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(255,255,255,0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.04) 1px, transparent 1px);
  background-size: 40px 40px;
  pointer-events: none;
  opacity: 0.5;
  animation: dz-promo-grid-drift 20s linear infinite;
}
@keyframes dz-promo-grid-drift {
  0% { background-position: 0 0; }
  100% { background-position: 40px 40px; }
}
.dz-promo-badge--ai {
  background: rgba(0, 0, 0, 0.2);
  border-color: rgba(255, 255, 255, 0.35);
  gap: 0.5rem;
}
.dz-promo-badge--ai .dz-ai-dot {
  width: 6px;
  height: 6px;
}
.dz-promo-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
  margin-bottom: 1.25rem;
}
.dz-promo-tags span {
  font-size: 0.75rem;
  font-weight: 600;
  padding: 0.3rem 0.7rem;
  color: rgba(255, 255, 255, 0.9);
  background: rgba(0, 0, 0, 0.15);
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: 100px;
  backdrop-filter: blur(6px);
}

/* 全息圆环视觉 */
.dz-promo-holo {
  position: relative;
  width: 240px;
  height: 240px;
}
.dz-promo-holo-ring {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.25);
}
.dz-promo-holo-ring.r1 {
  inset: 0;
  animation: dz-holo-spin 12s linear infinite;
  border-style: dashed;
  opacity: 0.5;
}
.dz-promo-holo-ring.r2 {
  inset: 18%;
  animation: dz-holo-spin 8s linear infinite reverse;
  border-color: rgba(255, 255, 255, 0.35);
}
.dz-promo-holo-ring.r3 {
  inset: 32%;
  animation: dz-holo-spin 6s linear infinite;
  border-color: rgba(255, 255, 255, 0.2);
}
@keyframes dz-holo-spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}
.dz-promo-holo-core {
  position: absolute;
  inset: 38%;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.15);
  backdrop-filter: blur(12px);
  border: 1px solid rgba(255, 255, 255, 0.35);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2rem;
  color: #fff;
  box-shadow: 0 0 40px rgba(255, 255, 255, 0.15);
  animation: dz-holo-core-pulse 3s ease-in-out infinite;
}
@keyframes dz-holo-core-pulse {
  0%, 100% { box-shadow: 0 0 30px rgba(255, 255, 255, 0.12); }
  50% { box-shadow: 0 0 50px rgba(255, 255, 255, 0.28); }
}
.dz-promo-holo-orbit {
  position: absolute;
  width: 100%;
  height: 100%;
  animation: dz-holo-spin 10s linear infinite;
}
.dz-promo-holo-orbit.o2 { animation-duration: 14s; animation-direction: reverse; }
.dz-promo-holo-orbit.o3 { animation-duration: 18s; }
.dz-promo-holo-orbit span {
  position: absolute;
  top: -2px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 0.65rem;
  font-weight: 700;
  padding: 0.2rem 0.5rem;
  background: rgba(255, 255, 255, 0.2);
  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: 100px;
  color: #fff;
  white-space: nowrap;
}

/* Promo Strip · 科技蓝 */
.dz-promo-strip--tech .dz-ai-marquee {
  opacity: 1;
}
.dz-promo-strip--tech .dz-promo-strip-links {
  padding: 0.9rem 0 !important;
  border-top: 1px solid rgba(var(--hero-primary-rgb), 0.12);
}
.dz-promo-strip--tech .dz-promo-strip-inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 0.5rem 2rem;
}
.dz-promo-strip--tech .dz-strip-item {
  position: relative;
  overflow: hidden;
  transition: color 0.25s, background 0.25s, transform 0.25s;
}
.dz-promo-strip--tech .dz-strip-item i {
  color: var(--hero-primary);
  transition: transform 0.25s, filter 0.25s;
}
.dz-promo-strip--tech .dz-strip-item:hover i {
  transform: scale(1.1);
  filter: drop-shadow(0 0 8px rgba(var(--hero-primary-rgb), 0.6));
}
.dz-promo-strip--tech .dz-strip-item::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 0;
  height: 2px;
  background: var(--hero-primary);
  transition: width 0.3s, left 0.3s;
  box-shadow: 0 0 8px rgba(var(--hero-primary-rgb), 0.5);
}
.dz-promo-strip--tech .dz-strip-item:hover::after {
  width: 80%;
  left: 10%;
}
.dz-promo-strip--tech .dz-strip-item.highlight {
  color: var(--hero-primary);
  text-shadow: 0 0 20px rgba(var(--hero-primary-rgb), 0.45);
  animation: dz-strip-highlight-pulse 3s ease-in-out infinite;
}
@keyframes dz-strip-highlight-pulse {
  0%, 100% { text-shadow: 0 0 12px rgba(var(--hero-primary-rgb), 0.3); }
  50% { text-shadow: 0 0 22px rgba(var(--hero-primary-rgb), 0.65); }
}

/* ========== Hero/Promo 细节增强 ========== */
.dz-hero-spotlight {
  position: absolute;
  width: 600px;
  height: 600px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(var(--tea-color-palette-blue-rgb), 0.14) 0%, transparent 65%);
  pointer-events: none;
  z-index: 0;
  transform: translate(-50%, -50%);
  opacity: 0;
  transition: opacity 0.4s;
}
.dz-hero.dz-hero--tech:hover .dz-hero-spotlight {
  opacity: 1;
}
.dz-hero-beam {
  position: absolute;
  top: 0;
  left: -100%;
  width: 60%;
  height: 100%;
  background: linear-gradient(105deg, transparent 40%, rgba(var(--tea-color-palette-blue-rgb), 0.05) 50%, transparent 60%);
  pointer-events: none;
  z-index: 1;
  animation: dz-hero-beam-sweep 8s ease-in-out infinite;
}
@keyframes dz-hero-beam-sweep {
  0%, 100% { left: -60%; opacity: 0; }
  10% { opacity: 1; }
  50% { left: 100%; opacity: 1; }
  60%, 100% { opacity: 0; }
}
.dz-badge--ai {
  animation: dz-badge-glow 4s ease-in-out infinite;
}
@keyframes dz-badge-glow {
  0%, 100% { box-shadow: 0 0 20px rgba(var(--tea-color-palette-blue-rgb), 0.14); }
  50% { box-shadow: 0 0 28px rgba(var(--tea-color-palette-blue-rgb), 0.32), inset 0 0 12px rgba(var(--tea-color-palette-blue-rgb), 0.08); }
}
.dz-tech-chip {
  animation: dz-chip-in 0.6s ease backwards, dz-chip-float 4s ease-in-out infinite;
  animation-delay: calc(var(--chip-i, 0) * 0.12s + 0.3s), calc(var(--chip-i, 0) * 0.5s + 1s);
}
@keyframes dz-chip-float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-3px); }
}
.dz-hero.dz-hero--tech .dz-tech-chip:hover {
  animation: none;
}
@keyframes dz-chip-in {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}
.dz-hero-stats {
  display: flex;
  gap: 1.5rem;
  margin-top: 1.75rem;
  padding-top: 1.25rem;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  justify-content: center;
}
@media (min-width: 992px) {
  .dz-hero-stats { justify-content: flex-start; }
}
.dz-hero-stat {
  animation: dz-stat-in 0.6s ease backwards;
}
.dz-hero-stat:nth-child(1) { animation-delay: 0.5s; }
.dz-hero-stat:nth-child(2) { animation-delay: 0.65s; }
.dz-hero-stat:nth-child(3) { animation-delay: 0.8s; }
@keyframes dz-stat-in {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}
.dz-hero-stat strong {
  display: block;
  font-size: 1.35rem;
  font-weight: 800;
  color: var(--hero-primary);
  line-height: 1.2;
  text-shadow: 0 0 20px rgba(var(--hero-primary-rgb), 0.42);
}
.dz-hero-stat span {
  font-size: 0.72rem;
  color: rgba(255, 255, 255, 0.45);
  letter-spacing: 0.04em;
}
.dz-hero-floaters {
  position: absolute;
  inset: -12px -8px;
  pointer-events: none;
  z-index: 2;
}
.dz-hero-float {
  position: absolute;
  display: flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.4rem 0.75rem;
  font-size: 0.72rem;
  font-weight: 700;
  color: rgba(255, 255, 255, 0.85);
  background: rgba(29, 40, 82, 0.78);
  border: 1px solid rgba(var(--tea-color-palette-blue-rgb), 0.35);
  border-radius: 8px;
  backdrop-filter: blur(10px);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3);
  animation: dz-float-drift 6s ease-in-out infinite;
}
.dz-hero-float i {
  color: var(--hero-primary);
  font-size: 0.9rem;
}
.dz-hero-float.f1 { top: 4%; right: -2%; animation-delay: 0s; }
.dz-hero-float.f2 { bottom: 18%; left: -4%; animation-delay: -2s; }
.dz-hero-float.f3 { top: 42%; right: -6%; animation-delay: -4s; }
@keyframes dz-float-drift {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-10px); }
}
.dz-ai-console {
  position: relative;
  z-index: 1;
}
.dz-ai-console-glow {
  position: absolute;
  inset: -1px;
  border-radius: 17px;
  background: linear-gradient(135deg, rgba(var(--tea-color-palette-blue-rgb), 0.42), rgba(9, 87, 217, 0.22), rgba(0, 255, 136, 0.22));
  z-index: -1;
  opacity: 0.6;
  animation: dz-console-border 4s linear infinite;
  background-size: 200% 200%;
}
@keyframes dz-console-border {
  0% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}
.dz-hud-corner {
  position: absolute;
  width: 16px;
  height: 16px;
  border-color: rgba(var(--tea-color-palette-blue-rgb), 0.65);
  border-style: solid;
  pointer-events: none;
  z-index: 3;
}
.dz-hud-corner.tl { top: 8px; left: 8px; border-width: 2px 0 0 2px; }
.dz-hud-corner.tr { top: 8px; right: 8px; border-width: 2px 2px 0 0; }
.dz-hud-corner.bl { bottom: 8px; left: 8px; border-width: 0 0 2px 2px; }
.dz-hud-corner.br { bottom: 8px; right: 8px; border-width: 0 2px 2px 0; }
.dz-ai-core-glow {
  animation: dz-core-breathe 3s ease-in-out infinite;
}
@keyframes dz-core-breathe {
  0%, 100% { opacity: 0.45; }
  50% { opacity: 0.9; }
}
.dz-ai-viz-scan {
  position: absolute;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, rgba(var(--tea-color-palette-blue-rgb), 0.88), transparent);
  animation: dz-viz-scan 2.8s ease-in-out infinite;
  pointer-events: none;
  z-index: 2;
}
.dz-ai-viz-inner::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 6px;
  box-shadow: inset 0 0 24px rgba(var(--tea-color-palette-blue-rgb), 0.08);
  pointer-events: none;
  z-index: 2;
}
.dz-ai-data-pulse {
  filter: drop-shadow(0 0 5px currentColor);
  animation: dz-data-pulse-glow 1.5s ease-in-out infinite;
}
@keyframes dz-data-pulse-glow {
  0%, 100% { opacity: 0.75; }
  50% { opacity: 1; }
}
@keyframes dz-viz-scan {
  0% { top: 0; opacity: 0; }
  10% { opacity: 1; }
  90% { opacity: 1; }
  100% { top: 100%; opacity: 0; }
}
.dz-ai-modules {
  display: flex;
  flex-direction: column;
  gap: 0.45rem;
  margin-bottom: 0.75rem;
  flex-shrink: 0;
}
.dz-ai-module-row {
  display: grid;
  grid-template-columns: 88px 1fr 36px;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.68rem;
}
.dz-ai-module-row .label {
  color: rgba(255, 255, 255, 0.55);
  font-weight: 600;
  white-space: nowrap;
}
.dz-ai-module-row .label i {
  margin-right: 0.2rem;
  color: var(--hero-primary);
}
.dz-ai-bar {
  height: 4px;
  background: rgba(255, 255, 255, 0.08);
  border-radius: 4px;
  overflow: hidden;
}
.dz-ai-bar .fill {
  display: block;
  height: 100%;
  width: 0;
  background: linear-gradient(90deg, var(--tea-color-palette-blue-5), var(--hero-primary));
  border-radius: 4px;
  transition: width 1.2s cubic-bezier(0.22, 1, 0.36, 1);
  box-shadow: 0 0 10px rgba(var(--hero-primary-rgb), 0.55);
}
.dz-ai-bar .fill.is-loaded {
  width: var(--bar-w, 0%);
  position: relative;
  overflow: hidden;
}
.dz-ai-bar .fill.is-loaded::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(105deg, transparent 30%, rgba(255, 255, 255, 0.45) 50%, transparent 70%);
  animation: dz-bar-shimmer 2.2s ease-in-out infinite;
}
@keyframes dz-bar-shimmer {
  0% { transform: translateX(-100%); }
  100% { transform: translateX(100%); }
}
.dz-ai-module-row .pct {
  color: var(--hero-primary);
  font-weight: 700;
  text-align: right;
}
.dz-ai-log-wrap {
  position: relative;
  flex-shrink: 0;
  height: 156px;
  margin-bottom: 0.75rem;
  padding: 0.55rem 0.65rem 0.5rem;
  background: rgba(0, 0, 0, 0.25);
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 8px;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  transition: border-color 0.3s, box-shadow 0.3s;
}
.dz-ai-log-wrap.is-typing {
  border-color: rgba(var(--tea-color-palette-blue-rgb), 0.28);
  box-shadow: inset 0 0 20px rgba(var(--tea-color-palette-blue-rgb), 0.06);
}
.dz-ai-log-head {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  color: rgba(255, 255, 255, 0.35);
  margin-bottom: 0.35rem;
  text-transform: uppercase;
  flex-shrink: 0;
}
.dz-ai-log-live {
  margin-left: auto;
  padding: 0.1rem 0.4rem;
  font-size: 0.58rem;
  color: #00ff88;
  border: 1px solid rgba(0, 255, 136, 0.35);
  border-radius: 3px;
  animation: dz-live-badge 2s ease-in-out infinite;
}
@keyframes dz-live-badge {
  0%, 100% { opacity: 0.7; box-shadow: none; }
  50% { opacity: 1; box-shadow: 0 0 8px rgba(0, 255, 136, 0.3); }
}
.dz-ai-log-viewport {
  flex: 1;
  min-height: 0;
  height: 112px;
  overflow-x: hidden;
  overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: rgba(var(--tea-color-palette-blue-rgb), 0.38) transparent;
  position: relative;
}
.dz-ai-log-viewport::-webkit-scrollbar {
  width: 4px;
}
.dz-ai-log-viewport::-webkit-scrollbar-thumb {
  background: rgba(var(--tea-color-palette-blue-rgb), 0.38);
  border-radius: 4px;
}
.dz-ai-log-dot {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #00ff88;
  animation: dz-ai-blink 1.2s ease-in-out infinite;
}
@keyframes dz-cursor-blink {
  0%, 100% { opacity: 1; }
  50% { opacity: 0; }
}
.dz-ai-metric strong small {
  font-size: 0.65rem;
  font-weight: 600;
  opacity: 0.7;
  margin-left: 1px;
}
.dz-ai-metric-spark {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--hero-primary), transparent);
  animation: dz-spark-slide 2.5s ease-in-out infinite;
}
@keyframes dz-spark-slide {
  0% { transform: translateX(-100%); }
  100% { transform: translateX(100%); }
}

/* Promo 细节 */
.dz-promo-particles {
  position: absolute;
  inset: 0;
  pointer-events: none;
  overflow: hidden;
}
.dz-promo-particles::before,
.dz-promo-particles::after {
  content: "";
  position: absolute;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.6);
  box-shadow:
    80px 60px 0 rgba(255,255,255,0.3),
    200px 120px 0 rgba(255,255,255,0.2),
    320px 40px 0 rgba(255,255,255,0.35),
    450px 180px 0 rgba(255,255,255,0.15),
    120px 200px 0 rgba(255,255,255,0.25),
    380px 90px 0 rgba(255,255,255,0.2);
  animation: dz-promo-particle-float 12s ease-in-out infinite;
}
.dz-promo-particles::after {
  animation-delay: -6s;
  opacity: 0.6;
}
@keyframes dz-promo-particle-float {
  0%, 100% { transform: translate(0, 0); }
  50% { transform: translate(-15px, -20px); }
}
.dz-promo-beam {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.5), transparent);
  animation: dz-promo-beam-move 5s ease-in-out infinite;
  pointer-events: none;
}
@keyframes dz-promo-beam-move {
  0% { top: 0; opacity: 0; }
  10% { opacity: 0.8; }
  90% { opacity: 0.8; }
  100% { top: 100%; opacity: 0; }
}
.dz-promo-tags span {
  transition: transform 0.25s, box-shadow 0.25s, background 0.25s;
}
.dz-promo-tags span:hover {
  transform: translateY(-2px);
  background: rgba(255, 255, 255, 0.22);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15);
}
.dz-promo-visual-wrap {
  display: flex;
  align-items: center;
  gap: 1.25rem;
}
.dz-promo-side-stats {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.dz-promo-side-stat {
  padding: 0.85rem 1rem;
  min-width: 90px;
  text-align: center;
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: 12px;
  backdrop-filter: blur(10px);
  color: #fff;
  animation: dz-side-stat-in 0.5s ease backwards;
}
.dz-promo-side-stat:nth-child(2) { animation-delay: 0.15s; }
@keyframes dz-side-stat-in {
  from { opacity: 0; transform: translateX(12px); }
  to { opacity: 1; transform: translateX(0); }
}
.dz-promo-side-stat strong {
  display: block;
  font-size: 1.25rem;
  font-weight: 800;
  line-height: 1.2;
}
.dz-promo-side-stat span {
  font-size: 0.68rem;
  opacity: 0.85;
}
.dz-promo-holo::before {
  content: "";
  position: absolute;
  inset: -20px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255,255,255,0.08) 0%, transparent 70%);
  animation: dz-holo-core-pulse 3s ease-in-out infinite;
}
.dz-promo-holo-orbit span {
  box-shadow: 0 0 12px rgba(255, 255, 255, 0.15);
  transition: transform 0.2s;
}

@media (prefers-reduced-motion: reduce) {
  .dz-hero-grid,
  .dz-hero-orb,
  .dz-hero-gradient-text,
  .dz-hero-beam,
  .dz-ai-ticker-track,
  .dz-ai-marquee-track,
  .dz-ai-marquee-track span i,
  .dz-promo-strip--tech .dz-strip-item.highlight,
  .dz-promo-holo-ring,
  .dz-promo-holo-orbit,
  .dz-promo-holo-core,
  .dz-ai-link,
  .dz-ai-node,
  .dz-ai-dot,
  .dz-ai-pulse,
  .dz-badge--ai,
  .dz-tech-chip,
  .dz-hero-float,
  .dz-ai-console-glow,
  .dz-ai-viz-scan,
  .dz-ai-cursor,
  .dz-ai-metric-spark,
  .dz-promo-beam,
  .dz-promo-particles::before,
  .dz-promo-particles::after,
  .dz-promo-side-stat,
  .dz-promo-tech-grid,
  .dz-ai-ticker::before,
  .dz-hero.dz-hero--tech .dz-tech-chip::before {
    animation: none !important;
  }
  .dz-hero-canvas,
  .dz-hero-spotlight,
  .dz-ai-viz-canvas {
    display: none;
  }
  .dz-ai-console,
  .dz-hero-stat,
  .dz-ai-viz-tags span,
  .dz-promo-carousel.carousel-fade .carousel-item.active .dz-promo-title,
  .dz-promo-carousel.carousel-fade .carousel-item.active .dz-promo-desc,
  .dz-promo-carousel.carousel-fade .carousel-item.active .dz-promo-tags,
  .dz-promo-carousel.carousel-fade .carousel-item.active .dz-promo-actions,
  .dz-promo-carousel.carousel-fade .carousel-item.active .dz-promo-visual-wrap,
  .dz-ai-bar .fill.is-loaded::after,
  .dz-ai-log-live {
    animation: none !important;
  }
  .dz-ai-bar .fill {
    width: var(--bar-w, 0%) !important;
  }
}

/* 区块通用 */
.dz-section {
  padding: 5rem 0;
}
.dz-section-alt {
  background: var(--dz-bg);
}
.dz-section-title {
  text-align: center;
  margin-bottom: 3rem;
}
.dz-section-title .label {
  display: inline-block;
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--dz-primary);
  margin-bottom: 0.5rem;
}
.dz-section-title h2 {
  font-size: clamp(1.5rem, 4vw, 2.25rem);
  font-weight: 800;
  color: var(--dz-dark);
  margin-bottom: 0.75rem;
}
.dz-section-title p {
  color: var(--dz-text-muted);
  max-width: 640px;
  margin: 0 auto;
  line-height: 1.7;
}

/* Smart X 平台 */
.dz-smartx-card {
  background: var(--dz-gradient);
  border-radius: 20px;
  padding: 2.5rem;
  color: #fff;
  position: relative;
  overflow: hidden;
}
.dz-smartx-card::after {
  content: "";
  position: absolute;
  right: -20%;
  top: -30%;
  width: 60%;
  height: 120%;
  background: radial-gradient(circle, rgba(255,255,255,0.15) 0%, transparent 70%);
  pointer-events: none;
}
.dz-smartx-features {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 1.25rem;
  margin-top: 2rem;
}
.dz-smartx-features .item {
  background: rgba(255, 255, 255, 0.12);
  border-radius: var(--dz-radius);
  padding: 1.25rem;
  backdrop-filter: blur(8px);
}
.dz-smartx-features .item h4 {
  font-size: 1rem;
  font-weight: 700;
  margin-bottom: 0.35rem;
}
.dz-smartx-features .item p {
  font-size: 0.85rem;
  opacity: 0.9;
  margin: 0;
  line-height: 1.5;
}

/* 三大体系 Tab */
.dz-pillar-tabs {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.75rem;
  margin-bottom: 2.5rem;
}
.dz-pillar-tabs .btn {
  border-radius: 100px;
  padding: 0.6rem 1.5rem;
  font-weight: 600;
  border: 2px solid var(--dz-border);
  background: #fff;
  color: var(--dz-text);
}
.dz-pillar-tabs .btn.active {
  border-color: transparent;
  color: #fff;
  box-shadow: 0 4px 16px rgba(13, 95, 219, 0.3);
}
.dz-pillar-tabs .btn.active[data-pillar-tab="medical"] {
  background: var(--dz-medical-gradient);
  box-shadow: 0 4px 16px rgba(0, 200, 200, 0.35);
}
.dz-pillar-tabs .btn.active[data-pillar-tab="gov"] {
  background: var(--dz-gov-gradient);
  box-shadow: 0 4px 16px rgba(222, 41, 16, 0.35);
}
.dz-pillar-tabs .btn.active[data-pillar-tab="city"] {
  background: var(--dz-city-gradient);
  box-shadow: 0 4px 16px rgba(13, 95, 219, 0.35);
}
.dz-pillar-panel {
  display: none;
  animation: dzFadeIn 0.4s ease;
}
.dz-pillar-panel.active {
  display: block;
}
@keyframes dzFadeIn {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}

/* 产品卡片 */
.dz-product-card {
  background: var(--dz-bg-card);
  border: 1px solid var(--dz-border);
  border-radius: var(--dz-radius);
  padding: 1.5rem;
  height: 100%;
  transition: transform 0.25s, box-shadow 0.25s, border-color 0.25s;
}
.dz-product-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--dz-shadow);
  border-color: rgba(13, 95, 219, 0.25);
}
.dz-product-card .icon-wrap {
  width: 48px;
  height: 48px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1rem;
  font-size: 1.35rem;
}
.dz-product-card.medical .icon-wrap { background: rgba(0, 200, 200, 0.12); color: var(--dz-medical); }
.dz-product-card.gov .icon-wrap { background: rgba(222, 41, 16, 0.1); color: var(--dz-gov); }
.dz-product-card.city .icon-wrap { background: rgba(13, 95, 219, 0.1); color: var(--dz-city); }
.dz-product-card h5 {
  font-size: 1rem;
  font-weight: 700;
  color: var(--dz-dark);
  margin-bottom: 0.5rem;
}
.dz-product-card p {
  font-size: 0.875rem;
  color: var(--dz-text-muted);
  margin: 0;
  line-height: 1.6;
}

/* 体系概览大卡片 */
.dz-pillar-overview {
  background: #fff;
  border-radius: 16px;
  border: 1px solid var(--dz-border);
  padding: 2rem;
  margin-bottom: 2rem;
  box-shadow: 0 4px 20px rgba(13, 95, 219, 0.06);
}
.dz-pillar-overview .pillar-icon {
  width: 64px;
  height: 64px;
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.75rem;
  flex-shrink: 0;
}
.dz-pillar-overview.medical .pillar-icon { background: var(--dz-medical-gradient); color: #fff; }
.dz-pillar-overview.gov .pillar-icon { background: var(--dz-gov-gradient); color: #fff; }
.dz-pillar-overview.city .pillar-icon { background: var(--dz-city-gradient); color: #fff; }
.dz-badge-medical { background: rgba(0, 200, 200, 0.12) !important; color: var(--dz-medical) !important; }
.dz-badge-gov { background: var(--dz-gov) !important; color: #fff !important; }
.dz-badge-city { background: var(--dz-city) !important; color: #fff !important; }
.dz-pillar-overview.medical { border-color: var(--dz-medical-border); }
.dz-pillar-overview.gov { border-color: var(--dz-gov-border); }
.dz-pillar-overview.city { border-color: var(--dz-city-border); }

/* 优势数据 */
.dz-stats {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.5rem;
}
@media (min-width: 768px) {
  .dz-stats { grid-template-columns: repeat(4, 1fr); }
}
.dz-stat-item {
  text-align: center;
  padding: 1.5rem 1rem;
  background: #fff;
  border-radius: var(--dz-radius);
  border: 1px solid var(--dz-border);
}
.dz-stat-item .num {
  font-size: clamp(1.75rem, 4vw, 2.5rem);
  font-weight: 800;
  background: var(--dz-gradient);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  line-height: 1.2;
}
.dz-stat-item .unit {
  font-size: 1rem;
  font-weight: 600;
}
.dz-stat-item .desc {
  font-size: 0.875rem;
  color: var(--dz-text-muted);
  margin-top: 0.35rem;
}

/* 优势列表 */
.dz-advantage-item {
  display: flex;
  gap: 1rem;
  padding: 1.25rem 0;
  border-bottom: 1px solid var(--dz-border);
}
.dz-advantage-item:last-child { border-bottom: none; }
.dz-advantage-item .num {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  background: var(--dz-gradient);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 0.9rem;
  flex-shrink: 0;
}

/* 关于 */
.dz-about-img {
  background: var(--dz-gradient);
  border-radius: 16px;
  aspect-ratio: 4/3;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 4rem;
  opacity: 0.9;
  position: relative;
  overflow: hidden;
}
.dz-about-img::before {
  content: "Smart X";
  position: absolute;
  font-size: 5rem;
  font-weight: 900;
  opacity: 0.15;
  letter-spacing: 0.1em;
}

/* 联系 */
.dz-contact {
  background: var(--dz-dark);
  color: #fff;
  border-radius: 20px;
  padding: 2.5rem;
}
.dz-contact a {
  color: var(--dz-accent);
  text-decoration: none;
}
.dz-contact a:hover {
  text-decoration: underline;
}
.dz-contact .dz-footer-phone {
  font-size: 1.05rem;
  font-weight: 600;
  color: #fff;
  margin: 0;
}

/* 页脚 */
.dz-footer {
  background: linear-gradient(180deg, #0c1829 0%, var(--dz-dark) 100%) !important;
  padding: 3.5rem 0 0;
  color: rgba(255, 255, 255, 0.85);
}
.dz-footer-main {
  padding-bottom: 2.5rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
.dz-footer-logo {
  font-size: 1.5rem;
  font-weight: 800;
  color: #fff;
  letter-spacing: 0.04em;
  margin-bottom: 0.35rem;
}
.dz-footer-tagline {
  font-size: 0.8rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--dz-accent);
  margin-bottom: 1rem;
  opacity: 0.9;
}
.dz-footer-intro {
  font-size: 0.875rem;
  line-height: 1.75;
  color: rgba(255, 255, 255, 0.55);
  margin: 0;
  max-width: 22rem;
}
.dz-footer-heading {
  font-size: 0.8rem;
  font-weight: 700;
  color: rgba(255, 255, 255, 0.45);
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin-bottom: 1.15rem;
}
.dz-footer-nav {
  list-style: none;
  padding: 0;
  margin: 0;
}
.dz-footer-nav li {
  margin-bottom: 0.55rem;
}
.dz-footer-nav li:last-child {
  margin-bottom: 0;
}
.dz-footer-nav a {
  font-size: 0.875rem;
  color: rgba(255, 255, 255, 0.72);
  text-decoration: none;
  transition: color 0.2s, padding-left 0.2s;
  display: inline-block;
}
.dz-footer-nav a:hover {
  color: var(--dz-accent);
  padding-left: 4px;
}
.dz-footer-contact-list {
  list-style: none;
  padding: 0;
  margin: 0 0 1.25rem;
}
.dz-footer-contact-list li {
  display: grid;
  grid-template-columns: 4.5rem 1fr;
  gap: 0.35rem 0.75rem;
  align-items: baseline;
  padding: 0.4rem 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}
.dz-footer-contact-list li:last-child {
  border-bottom: none;
}
.dz-footer-contact-label {
  font-size: 0.75rem;
  color: rgba(255, 255, 255, 0.45);
  white-space: nowrap;
}
.dz-footer-contact-list a {
  font-size: 0.8125rem;
  color: rgba(255, 255, 255, 0.88);
  text-decoration: none;
  word-break: break-all;
  transition: color 0.2s;
}
.dz-footer-contact-list a:hover {
  color: var(--dz-accent);
}
.dz-footer-hotline {
  display: flex;
  align-items: flex-start;
  gap: 0.65rem;
  padding: 0.85rem 1rem;
  margin-bottom: 1.25rem;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 10px;
}
.dz-footer-hotline > i {
  font-size: 1.25rem;
  color: var(--dz-accent);
  margin-top: 0.15rem;
}
.dz-footer-phone-num {
  display: block;
  font-size: 1.15rem;
  font-weight: 700;
  color: #fff;
  text-decoration: none;
  letter-spacing: 0.04em;
  line-height: 1.3;
}
.dz-footer-phone-num:hover {
  color: var(--dz-accent);
}
.dz-footer-phone-note {
  display: block;
  font-size: 0.75rem;
  color: rgba(255, 255, 255, 0.45);
  margin-top: 0.2rem;
}
.dz-footer-wechat-block {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem;
  background: rgba(13, 95, 219, 0.12);
  border: 1px solid rgba(13, 95, 219, 0.22);
  border-radius: 12px;
}
.dz-footer-wechat-info {
  flex: 1;
  min-width: 0;
}
.dz-footer-wechat-info .dz-footer-heading {
  margin-bottom: 0.5rem;
  color: rgba(255, 255, 255, 0.55);
}
.dz-footer-wechat-info p {
  font-size: 0.9rem;
  font-weight: 600;
  color: #fff;
}
.dz-footer-wechat-hint {
  font-size: 0.75rem !important;
  font-weight: 400 !important;
  color: rgba(255, 255, 255, 0.45) !important;
  margin-top: 0.25rem !important;
}
.dz-footer-qr {
  flex-shrink: 0;
  width: 96px;
  height: 96px;
  border-radius: 8px;
  background: #fff;
  padding: 4px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
}
.dz-footer-qr img {
  width: 100%;
  height: 100%;
  display: block;
  border-radius: 5px;
  object-fit: cover;
}
.dz-footer-bar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem 1.5rem;
  padding: 1.25rem 0 1.5rem;
  font-size: 0.75rem;
  color: rgba(255, 255, 255, 0.4);
}
.dz-footer-bar-left {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.35rem 0.75rem;
  line-height: 1.6;
}
.dz-footer-bar-sep {
  opacity: 0.35;
}
.dz-footer-bar-right a {
  color: rgba(255, 255, 255, 0.5);
  text-decoration: none;
  transition: color 0.2s;
}
.dz-footer-bar-right a:hover {
  color: var(--dz-accent);
}
@media (max-width: 991.98px) {
  .dz-footer {
    padding-top: 2.5rem;
  }
  .dz-footer-brand-col {
    margin-bottom: 0.5rem;
    padding-bottom: 1.5rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  }
  .dz-footer-intro {
    max-width: none;
  }
}
@media (max-width: 575.98px) {
  .dz-footer-contact-list li {
    grid-template-columns: 1fr;
    gap: 0.15rem;
  }
  .dz-footer-bar {
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
  }
  .dz-footer-bar-sep {
    display: none;
  }
  .dz-footer-bar-left {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.25rem;
  }
}

/* 联系区块 */
.dz-contact-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
}
@media (min-width: 768px) {
  .dz-contact-grid { grid-template-columns: repeat(4, 1fr); }
}
.dz-contact-card {
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: var(--dz-radius);
  padding: 1.15rem;
  height: 100%;
  transition: background 0.2s;
}
.dz-contact-card:hover {
  background: rgba(13, 95, 219, 0.2);
}
.dz-contact-card h6 {
  font-size: 0.8rem;
  color: rgba(255, 255, 255, 0.6);
  margin-bottom: 0.35rem;
}
.dz-contact-card a {
  font-size: 0.9rem;
  font-weight: 600;
  word-break: break-all;
}

/* 工作机会 */
.dz-careers-tabs {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.75rem;
  margin-bottom: 2rem;
}
.dz-careers-tabs .btn {
  border-radius: 100px;
  padding: 0.55rem 1.5rem;
  font-weight: 600;
  border: 2px solid var(--dz-border);
  background: #fff;
  color: var(--dz-text);
}
.dz-careers-tabs .btn.active {
  background: var(--dz-gradient);
  border-color: transparent;
  color: #fff;
}
.dz-careers-panel {
  display: none;
}
.dz-careers-panel.active {
  display: block;
  animation: dzFadeIn 0.35s ease;
}
.dz-job-card {
  background: #fff;
  border: 1px solid var(--dz-border);
  border-radius: var(--dz-radius);
  padding: 1.75rem;
  margin-bottom: 1.25rem;
  border-left: 4px solid var(--dz-primary);
}
.dz-job-card h4 {
  font-size: 1.15rem;
  font-weight: 800;
  color: var(--dz-dark);
  margin-bottom: 0.35rem;
}
.dz-job-card .job-meta {
  font-size: 0.8rem;
  color: var(--dz-text-muted);
  margin-bottom: 1rem;
  padding-bottom: 0.85rem;
  border-bottom: 1px dashed var(--dz-border);
}
.dz-job-card .job-meta .badge {
  font-weight: 600;
}
.dz-job-card h5 {
  font-size: 0.9rem;
  font-weight: 700;
  color: var(--dz-primary);
  margin: 1rem 0 0.5rem;
}
.dz-job-card ul {
  padding-left: 1.15rem;
  margin: 0 0 0.75rem;
}
.dz-job-card li {
  font-size: 0.875rem;
  color: var(--dz-text);
  line-height: 1.65;
  margin-bottom: 0.35rem;
}
.dz-job-card .job-apply {
  margin-top: 1rem;
  padding-top: 1rem;
  border-top: 1px solid var(--dz-border);
}
.dz-job-card .partner-note {
  background: rgba(13, 95, 219, 0.06);
  border-radius: 8px;
  padding: 0.85rem 1rem;
  font-size: 0.85rem;
  color: var(--dz-text-muted);
  margin-bottom: 1rem;
}
.dz-job-card .partner-note strong {
  color: var(--dz-primary);
}
.dz-campus-empty {
  text-align: center;
  padding: 4rem 2rem;
  background: var(--dz-bg);
  border-radius: 16px;
  border: 1px dashed var(--dz-border);
}
.dz-campus-empty i {
  font-size: 3.5rem;
  color: var(--dz-primary);
  opacity: 0.35;
  display: block;
  margin-bottom: 1rem;
}
/* 回到顶部 */
.dz-back-top {
  position: fixed;
  right: 1.25rem;
  bottom: 1.25rem;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: var(--dz-gradient);
  color: #fff;
  border: none;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: var(--dz-shadow);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s, visibility 0.3s, transform 0.2s;
  z-index: 1030;
}
.dz-back-top.visible {
  opacity: 1;
  visibility: visible;
}
.dz-back-top:hover {
  transform: translateY(-3px);
  color: #fff;
}

/* 移动端优化 */
@media (max-width: 991.98px) {
  .dz-hero {
    min-height: auto;
    padding: 6rem 0 3rem;
  }
  .dz-hero.dz-hero--tech {
    padding-bottom: 4rem;
  }
  .dz-ai-ticker {
    display: none;
  }
  .dz-ai-marquee-track {
    animation-duration: 24s;
    padding: 0.55rem 0;
  }
  .dz-ai-marquee-track span {
    padding: 0 1rem;
    font-size: 0.68rem;
  }
  .dz-promo-strip--tech .dz-promo-strip-inner {
    gap: 0.4rem 1.25rem;
  }
  .dz-ai-metrics {
    grid-template-columns: repeat(3, 1fr);
  }
  .dz-ai-console-body {
    min-height: 420px;
  }
  .dz-ai-console {
    min-height: auto;
  }
  .dz-ai-viz {
    min-height: 168px;
  }
  .dz-ai-viz-inner {
    min-height: 118px;
  }
  .dz-ai-viz-svg {
    height: 118px;
  }
  .dz-ai-log-wrap {
    height: 140px;
  }
  .dz-ai-log-viewport {
    height: 96px;
  }
  .dz-hero-floaters {
    display: none;
  }
  .dz-hero-stats {
    gap: 1rem;
  }
  .dz-ai-module-row {
    grid-template-columns: 76px 1fr 32px;
    font-size: 0.62rem;
  }
  .dz-section {
    padding: 3.5rem 0;
  }
  .dz-smartx-card {
    padding: 1.75rem;
  }
  .dz-pillar-overview {
    padding: 1.5rem;
  }
  .dz-pillar-overview .d-flex {
    flex-direction: column;
    text-align: center;
    align-items: center !important;
  }
  .dz-contact {
    padding: 1.75rem;
  }
}

@media (max-width: 575.98px) {
  .dz-pillar-tabs .btn {
    width: 100%;
    text-align: center;
  }
  .dz-hero .btn-group-hero {
    flex-direction: column;
    width: 100%;
  }
  .dz-hero .btn-group-hero .btn {
    width: 100%;
  }
}

/* 下拉菜单 · Mega Menu（左导航 + 右内容，参考斗象） */
.dz-navbar,
.dz-navbar > .container,
.dz-navbar .navbar-collapse {
  overflow: visible !important;
}
.dz-navbar .nav-item.dropdown.position-static {
  position: static;
}
.dz-navbar .dropdown-megamenu {
  border-top: 3px solid var(--dz-primary) !important;
  margin-top: 0 !important;
  padding: 0 !important;
  background: #fff !important;
  border-left: none !important;
  border-right: none !important;
  border-bottom: none !important;
  box-shadow: 0 16px 48px rgba(13, 95, 219, 0.14);
  display: none;
  pointer-events: none;
}
.dz-navbar .dropdown-megamenu.show {
  display: block !important;
  pointer-events: auto;
  z-index: 1050;
}
.dz-megamenu-split {
  display: flex;
  flex-direction: column;
  min-height: 0;
}
@media (min-width: 992px) {
  .dz-megamenu-split {
    flex-direction: row;
    min-height: 268px;
  }
}
.dz-megamenu-nav {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 0.35rem;
  padding: 0 0 0.75rem;
  margin: 0 0 0.75rem;
  border-bottom: 1px solid var(--dz-border);
  list-style: none;
}
@media (min-width: 992px) {
  .dz-megamenu-nav {
    flex: 0 0 220px;
    flex-direction: column;
    flex-wrap: nowrap;
    gap: 0.15rem;
    padding: 0.35rem 0;
    margin: 0;
    border-bottom: none;
    border-right: 1px solid var(--dz-border);
    background: linear-gradient(180deg, #fafcff 0%, #fff 100%);
  }
}
.dz-megamenu-nav-item {
  display: flex;
  align-items: center;
  gap: 0.65rem;
  padding: 0.65rem 0.85rem;
  border-radius: 8px;
  color: var(--dz-text);
  text-decoration: none;
  font-weight: 600;
  font-size: 0.9rem;
  border: 1px solid transparent;
  transition: background 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s;
  flex: 1 1 auto;
  min-width: 0;
}
@media (min-width: 992px) {
  .dz-megamenu-nav-item {
    flex: none;
    padding: 0.8rem 1rem 0.8rem 1.15rem;
    margin: 0 0.65rem 0 0;
    border-radius: 0 8px 8px 0;
    border-left: 3px solid transparent;
  }
}
.dz-megamenu-nav-item:hover {
  background: rgba(13, 95, 219, 0.06);
  color: var(--dz-primary);
}
.dz-megamenu-nav-item.active {
  background: rgba(13, 95, 219, 0.08);
  color: var(--dz-primary);
  border-color: rgba(13, 95, 219, 0.12);
}
@media (min-width: 992px) {
  .dz-megamenu-nav-item.active {
    background: #fff;
    border-color: var(--dz-border);
    border-left-color: var(--dz-primary);
    box-shadow: 2px 0 12px rgba(13, 95, 219, 0.06);
  }
  .dz-megamenu-nav-item[data-accent="medical"].active { border-left-color: var(--dz-medical); color: var(--dz-medical-dark); }
  .dz-megamenu-nav-item[data-accent="gov"].active { border-left-color: var(--dz-gov); color: var(--dz-gov); }
  .dz-megamenu-nav-item[data-accent="city"].active { border-left-color: var(--dz-city); color: var(--dz-city); }
}
.dz-megamenu-nav-icon {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(13, 95, 219, 0.08);
  color: var(--dz-primary);
  font-size: 1.1rem;
  flex-shrink: 0;
}
.dz-megamenu-nav-icon.medical { background: var(--dz-medical-bg); color: var(--dz-medical); }
.dz-megamenu-nav-icon.gov { background: var(--dz-gov-bg); color: var(--dz-gov); }
.dz-megamenu-nav-icon.city { background: var(--dz-city-bg); color: var(--dz-city); }
.dz-megamenu-nav-label {
  flex: 1;
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.dz-megamenu-nav-arrow {
  opacity: 0;
  font-size: 1.1rem;
  transition: opacity 0.2s, transform 0.2s;
  flex-shrink: 0;
}
@media (min-width: 992px) {
  .dz-megamenu-nav-item.active .dz-megamenu-nav-arrow,
  .dz-megamenu-nav-item:hover .dz-megamenu-nav-arrow {
    opacity: 0.65;
    transform: translateX(2px);
  }
}
.dz-megamenu-panes {
  flex: 1;
  padding: 0.25rem 0 0;
  position: relative;
  min-height: 200px;
}
@media (min-width: 992px) {
  .dz-megamenu-panes {
    padding: 0.5rem 0 0.5rem 2rem;
    min-height: 240px;
  }
}
.dz-megamenu-pane {
  display: none;
}
.dz-megamenu-pane.active {
  display: block;
  user-select: text;
}
.dz-megamenu-eyebrow {
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  color: var(--dz-primary);
  margin-bottom: 0.35rem;
  opacity: 0.85;
}
.dz-megamenu-eyebrow.medical { color: var(--dz-medical); }
.dz-megamenu-eyebrow.gov { color: var(--dz-gov); }
.dz-megamenu-eyebrow.city { color: var(--dz-city); }
.dz-megamenu-pane-title {
  font-size: 1.35rem;
  font-weight: 800;
  color: var(--dz-dark);
  margin-bottom: 0.65rem;
  line-height: 1.3;
}
.dz-megamenu-pane-title.medical { color: var(--dz-medical-dark); }
.dz-megamenu-pane-title.gov { color: var(--dz-gov); }
.dz-megamenu-pane-title.city { color: var(--dz-city); }
.dz-megamenu-pane-desc {
  font-size: 0.9rem;
  color: var(--dz-text-muted);
  line-height: 1.75;
  margin-bottom: 1rem;
  max-width: 42rem;
}
.dz-megamenu-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  padding: 0;
  margin: 0 0 1.15rem;
  list-style: none;
}
.dz-megamenu-tags li {
  font-size: 0.75rem;
  padding: 0.28rem 0.65rem;
  background: var(--dz-bg);
  border: 1px solid var(--dz-border);
  border-radius: 100px;
  color: var(--dz-text);
  font-weight: 500;
}
.dz-megamenu-job-list {
  list-style: none;
  padding: 0;
  margin: 0 0 1rem;
}
.dz-megamenu-job-list li {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: 0.35rem 1rem;
  padding: 0.65rem 0;
  border-bottom: 1px dashed var(--dz-border);
  font-size: 0.875rem;
}
.dz-megamenu-job-list li:last-child { border-bottom: none; }
.dz-megamenu-job-list strong { color: var(--dz-dark); font-weight: 700; }
.dz-megamenu-job-list span { color: var(--dz-text-muted); font-size: 0.8rem; }
.dz-megamenu-pane-meta {
  font-size: 0.85rem;
  color: var(--dz-text-muted);
  margin-bottom: 1rem !important;
}
.dz-megamenu-pane-meta a {
  color: var(--dz-primary);
  font-weight: 600;
  text-decoration: none;
}
.dz-megamenu-pane-meta a:hover { text-decoration: underline; }
.dz-megamenu-empty-hint {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  padding: 0.85rem 1rem;
  background: var(--dz-bg);
  border-radius: 8px;
  border: 1px dashed var(--dz-border);
  font-size: 0.85rem;
  color: var(--dz-text-muted);
  margin-bottom: 1rem;
  line-height: 1.6;
}
.dz-megamenu-empty-hint i {
  color: var(--dz-primary);
  font-size: 1.15rem;
  margin-top: 0.1rem;
  flex-shrink: 0;
}
.dz-megamenu-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 0.25rem;
}
.dz-megamenu-split a,
.dz-megamenu-split button,
.dz-megamenu-split .btn {
  pointer-events: auto;
  cursor: pointer;
}
.dz-megamenu-actions .btn-danger {
  background: var(--dz-gov-gradient) !important;
  border: none !important;
}
.dz-megamenu-actions .btn-outline-danger {
  color: var(--dz-gov) !important;
  border-color: var(--dz-gov) !important;
}
.dz-megamenu-actions .btn-outline-danger:hover {
  background: var(--dz-gov) !important;
  color: #fff !important;
}
.dz-megamenu-split--careers .dz-megamenu-panes {
  min-height: 220px;
}
.dz-megamenu-backdrop {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  top: var(--dz-nav-height, 72px);
  background: rgba(10, 22, 40, 0.12);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease, visibility 0.2s;
  z-index: 1020;
  pointer-events: none;
}
.dz-megamenu-backdrop.is-visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
@media (max-width: 991.98px) {
  .dz-megamenu-backdrop { display: none; }
}
@media (min-width: 992px) {
  .dz-megamenu-dropdown {
    position: static;
  }
  .dz-megamenu-dropdown .dropdown-megamenu {
    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
    width: 100%;
    max-width: 100%;
    border-radius: 0 !important;
    transform: none;
    inset-inline: 0;
    margin-top: 0;
  }
  .dz-megamenu-dropdown .dropdown-megamenu::before {
    content: "";
    position: absolute;
    top: -20px;
    left: 0;
    right: 0;
    height: 20px;
    background: transparent;
    pointer-events: auto;
  }
  .dz-navbar .dropdown-megamenu .container {
    max-width: 1140px;
  }
}
@media (max-width: 991.98px) {
  .dz-navbar .dropdown-megamenu {
    position: static !important;
    float: none;
    width: 100% !important;
    min-width: 100% !important;
    box-shadow: none;
    border-radius: var(--dz-radius) !important;
    margin: 0.5rem 0 0.75rem !important;
    border: 1px solid var(--dz-border) !important;
    border-top: 3px solid var(--dz-primary) !important;
  }
  .dz-navbar .dropdown-megamenu.show {
    display: block !important;
    pointer-events: auto;
  }
  .dz-navbar .dropdown-megamenu .container {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
  }
  .dz-navbar .nav-link.dropdown-toggle.dz-nav-megamenu-toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
  }
  .dz-megamenu-nav-item {
    flex: 1 1 calc(50% - 0.2rem);
  }
}
.dropdown-heading {
  color: var(--dz-primary) !important;
}

/* ========== 行业标准 ========== */
.dz-standards-banner {
  background: var(--dz-gradient);
  border-radius: 16px;
  padding: 2rem 2.5rem;
  color: #fff;
  position: relative;
  overflow: hidden;
  margin-bottom: 2.5rem;
}
.dz-standards-banner::after {
  content: "";
  position: absolute;
  right: -5%;
  top: -40%;
  width: 280px;
  height: 280px;
  background: radial-gradient(circle, rgba(255,255,255,0.15) 0%, transparent 70%);
  pointer-events: none;
}
.dz-standards-banner h3 {
  font-size: clamp(1.25rem, 3vw, 1.75rem);
  font-weight: 800;
  margin-bottom: 0.5rem;
}
.dz-standards-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
}
@media (min-width: 768px) {
  .dz-standards-grid { grid-template-columns: repeat(4, 1fr); }
}
.dz-standard-badge {
  background: #fff;
  border: 1px solid var(--dz-border);
  border-radius: var(--dz-radius);
  padding: 1.25rem 1rem;
  text-align: center;
  transition: transform 0.25s, box-shadow 0.25s;
  height: 100%;
}
.dz-standard-badge:hover {
  transform: translateY(-3px);
  box-shadow: var(--dz-shadow);
}
.dz-standard-badge .badge-icon {
  width: 48px;
  height: 48px;
  margin: 0 auto 0.75rem;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.35rem;
  background: rgba(13, 95, 219, 0.08);
  color: var(--dz-primary);
}
.dz-standard-badge h6 {
  font-size: 0.9rem;
  font-weight: 700;
  color: var(--dz-dark);
  margin-bottom: 0.35rem;
}
.dz-standard-badge p {
  font-size: 0.75rem;
  color: var(--dz-text-muted);
  margin: 0;
  line-height: 1.5;
}
.dz-arch-img {
  width: 100%;
  border-radius: var(--dz-radius);
  box-shadow: var(--dz-shadow);
}

/* ========== 首页推广 Banner ========== */
.dz-promo-section {
  margin-top: -1px;
  overflow-anchor: none;
}
.dz-promo-carousel .carousel-inner {
  border-radius: 0;
}
.dz-promo-slide {
  padding: 2.5rem 0;
  min-height: 280px;
  display: flex;
  align-items: center;
  position: relative;
  overflow: hidden;
}
.dz-promo-slide::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 85% 20%, rgba(255,255,255,0.12) 0%, transparent 45%),
    radial-gradient(circle at 10% 80%, rgba(var(--tea-color-palette-blue-rgb), 0.1) 0%, transparent 40%);
  pointer-events: none;
}
.dz-promo-medical {
  background: linear-gradient(115deg, #008f8f 0%, #00c8c8 45%, #40e0e0 100%);
}
.dz-promo-gov {
  background: linear-gradient(115deg, #9a1a0a 0%, #de2910 45%, #e53935 100%);
}
.dz-promo-city {
  background: linear-gradient(115deg, var(--tea-color-palette-blue-2) 0%, var(--tea-color-palette-blue-5) 45%, var(--tea-color-palette-blue-7) 100%);
}
.dz-promo-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.35rem 0.85rem;
  background: rgba(255,255,255,0.18);
  border: 1px solid rgba(255,255,255,0.25);
  border-radius: 100px;
  color: #fff;
  font-size: 0.8rem;
  font-weight: 600;
  margin-bottom: 1rem;
}
.dz-promo-title {
  color: #fff;
  font-size: clamp(1.5rem, 4vw, 2.25rem);
  font-weight: 800;
  line-height: 1.3;
  margin-bottom: 1rem;
  text-shadow: 0 2px 20px rgba(0, 0, 0, 0.2);
}
.dz-promo-desc {
  color: rgba(255,255,255,0.88);
  font-size: clamp(0.9rem, 2vw, 1.05rem);
  line-height: 1.7;
  margin-bottom: 1.5rem;
  max-width: 580px;
}
.dz-promo-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}
.dz-promo-actions .btn-light {
  color: var(--dz-primary);
  font-weight: 600;
  border: none;
}
.dz-promo-actions .btn-outline-light:hover {
  background: rgba(255,255,255,0.15);
  color: #fff;
}
.dz-promo-stat-group {
  display: flex;
  gap: 1rem;
}
.dz-promo-stat {
  background: rgba(255,255,255,0.12);
  backdrop-filter: blur(8px);
  border: 1px solid rgba(255,255,255,0.2);
  border-radius: 14px;
  padding: 1.25rem 1rem;
  text-align: center;
  min-width: 100px;
  color: #fff;
}
.dz-promo-stat strong {
  display: block;
  font-size: 1.5rem;
  font-weight: 800;
  line-height: 1.2;
}
.dz-promo-stat span {
  font-size: 0.75rem;
  opacity: 0.85;
}
.dz-promo-indicators {
  margin-bottom: 0.75rem;
}
.dz-promo-indicators button {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: rgba(255,255,255,0.45);
  border: none;
}
.dz-promo-indicators button.active {
  background-color: #fff;
}
.dz-promo-control {
  width: 8%;
  opacity: 0.7;
}
.dz-promo-strip {
  background: var(--dz-dark);
  padding: 0.85rem 0;
}
.dz-promo-strip.dz-promo-strip--tech {
  background: var(--tea-color-palette-blue-1);
  padding: 0;
  overflow: hidden;
}
.dz-promo-strip-inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.5rem 1.5rem;
}
.dz-strip-item {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  color: rgba(255,255,255,0.75);
  text-decoration: none;
  font-size: 0.875rem;
  font-weight: 500;
  padding: 0.35rem 0.5rem;
  border-radius: 6px;
  transition: color 0.2s, background 0.2s;
}
.dz-strip-item:hover {
  color: #fff;
  background: rgba(255,255,255,0.08);
}
.dz-strip-item.highlight {
  color: var(--dz-accent);
  font-weight: 700;
}
.dz-strip-item i {
  font-size: 1.1rem;
}

/* ========== CSS 可视化图文面板（不依赖外部图片） ========== */
.dz-visual-panel {
  border-radius: 16px;
  overflow: hidden;
  box-shadow: var(--dz-shadow);
  min-height: 300px;
  display: flex;
  flex-direction: column;
}
.dz-visual-topbar {
  background: var(--dz-gradient);
  color: #fff;
  text-align: center;
  padding: 0.65rem 1rem;
  font-size: 0.75rem;
  font-weight: 600;
}
.dz-visual-topbar.teal {
  background: var(--dz-medical-gradient);
}
.dz-visual-topbar.red {
  background: var(--dz-gov-gradient);
}
.dz-visual-topbar.blue {
  background: var(--dz-city-gradient);
}
.dz-visual-foot {
  background: rgba(13, 95, 219, 0.06);
  color: var(--dz-primary);
  text-align: center;
  padding: 0.65rem 1rem;
  font-size: 0.75rem;
  font-weight: 600;
  border-top: 1px solid var(--dz-border);
}
.dz-visual-foot.medical {
  background: rgba(0, 200, 200, 0.08);
  color: var(--dz-medical);
}
.dz-visual-foot.city,
.dz-visual-foot.purple {
  background: rgba(13, 95, 219, 0.08);
  color: var(--dz-city);
}
.dz-visual-foot.gov {
  background: rgba(222, 41, 16, 0.06);
  color: var(--dz-gov);
}
.medical-theme { color: var(--dz-medical) !important; }
.gov-theme { color: var(--dz-gov) !important; }
.city-theme { color: var(--dz-city) !important; }
.dz-cap-item i.medical-theme,
.dz-cap-item i.gov-theme,
.dz-cap-item i.city-theme {
  font-size: 1.5rem;
  display: block;
  margin-bottom: 0.4rem;
}

/* 架构分层图 */
.dz-visual-arch {
  background: linear-gradient(180deg, #0a1628 0%, #0f2744 100%);
}
.dz-visual-arch .dz-visual-head {
  text-align: center;
  padding: 1rem;
  color: #fff;
  font-size: 0.85rem;
  font-weight: 700;
  background: var(--dz-gradient);
}
.dz-arch-stack {
  flex: 1;
  padding: 1.25rem;
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
  justify-content: center;
}
.dz-arch-layer {
  border-radius: 10px;
  padding: 0.85rem 1rem;
  border: 1px solid rgba(61, 142, 245, 0.35);
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
}
.dz-arch-layer .layer-name {
  color: #fff;
  font-size: 0.85rem;
  font-weight: 700;
}
.dz-arch-layer .layer-desc {
  color: rgba(255,255,255,0.6);
  font-size: 0.7rem;
}
.dz-arch-layer.l1 { background: rgba(13, 95, 219, 0.2); }
.dz-arch-layer.l2 { background: rgba(13, 95, 219, 0.3); }
.dz-arch-layer.l3 { background: rgba(13, 95, 219, 0.4); }
.dz-arch-layer.l4 { background: rgba(13, 95, 219, 0.5); }
.dz-visual-arch .dz-visual-foot {
  background: rgba(255,255,255,0.05);
  color: rgba(255,255,255,0.75);
  border-top-color: rgba(255,255,255,0.1);
}

/* 医疗环形闭环 */
.dz-visual-medical {
  background: linear-gradient(160deg, var(--dz-medical-bg), #f5fdfd);
}
.dz-visual-medical .dz-visual-topbar {
  background: var(--dz-medical-gradient);
}
.dz-visual-medical .dz-visual-foot {
  background: rgba(0, 200, 200, 0.08);
  color: var(--dz-medical);
  border-top-color: var(--dz-medical-border);
}
.dz-visual-ring {
  flex: 1;
  position: relative;
  min-height: 260px;
  margin: 1rem;
}
.dz-ring-center {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: var(--dz-medical-gradient);
  color: #fff;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-size: 0.65rem;
  font-weight: 700;
  line-height: 1.3;
  box-shadow: 0 4px 20px rgba(0, 200, 200, 0.35);
  z-index: 2;
}
.dz-ring-center i {
  font-size: 1.35rem;
  margin-bottom: 0.15rem;
}
.dz-ring-node {
  position: absolute;
  background: #fff;
  border: 1.5px solid var(--dz-medical);
  border-radius: 10px;
  padding: 0.5rem 0.65rem;
  font-size: 0.7rem;
  font-weight: 600;
  color: var(--dz-medical);
  white-space: nowrap;
  box-shadow: 0 2px 12px rgba(0, 200, 200, 0.12);
  display: flex;
  align-items: center;
  gap: 0.3rem;
}
.dz-ring-node i { font-size: 1rem; }
.dz-ring-node.pos-t  { top: 4%;  left: 50%; transform: translateX(-50%); }
.dz-ring-node.pos-tr { top: 18%; right: 2%; }
.dz-ring-node.pos-br { bottom: 18%; right: 2%; }
.dz-ring-node.pos-b  { bottom: 4%; left: 50%; transform: translateX(-50%); }
.dz-ring-node.pos-bl { bottom: 18%; left: 2%; }
.dz-ring-node.pos-tl { top: 18%; left: 2%; }

/* 政务 hub 图 */
.dz-visual-gov {
  background: linear-gradient(160deg, var(--dz-gov-bg), #fff8f8);
}
.dz-gov-hub {
  flex: 1;
  position: relative;
  min-height: 240px;
  margin: 1.25rem;
}
.dz-gov-center {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 88px;
  height: 88px;
  border-radius: 50%;
  background: var(--dz-gov-gradient);
  color: #fff;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  font-size: 0.75rem;
  font-weight: 700;
  box-shadow: 0 4px 20px rgba(222, 41, 16, 0.35);
  z-index: 2;
}
.dz-gov-center i { font-size: 1.5rem; margin-bottom: 0.1rem; }
.dz-gov-corner {
  position: absolute;
  background: #fff;
  border: 1.5px solid var(--dz-gov);
  border-radius: 10px;
  padding: 0.6rem 0.75rem;
  text-align: center;
  min-width: 100px;
  box-shadow: 0 2px 12px rgba(222, 41, 16, 0.1);
}
.dz-gov-corner i {
  display: block;
  font-size: 1.25rem;
  color: var(--dz-gov);
  margin-bottom: 0.2rem;
}
.dz-gov-corner strong {
  display: block;
  font-size: 0.75rem;
  color: var(--dz-gov);
}
.dz-gov-corner small {
  font-size: 0.65rem;
  color: var(--dz-text-muted);
}
.dz-gov-corner.tl { top: 0; left: 0; }
.dz-gov-corner.tr { top: 0; right: 0; }
.dz-gov-corner.bl { bottom: 0; left: 0; }
.dz-gov-corner.br { bottom: 0; right: 0; }
.dz-gov-flow {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0.25rem;
  padding: 0.75rem 1rem;
  background: var(--dz-gov-gradient);
  color: #fff;
  font-size: 0.8rem;
  font-weight: 600;
}
.dz-gov-flow i { opacity: 0.7; }

/* 城市物联图 */
.dz-visual-city {
  background: linear-gradient(160deg, var(--dz-city-bg), #f8fbff);
}
.dz-city-cloud {
  background: var(--dz-city-gradient);
  color: #fff;
  text-align: center;
  padding: 0.75rem 1rem;
  font-size: 0.8rem;
  font-weight: 600;
}
.dz-city-cloud i { margin-right: 0.35rem; }
.dz-city-edge {
  background: rgba(13, 95, 219, 0.08);
  color: var(--dz-city);
  text-align: center;
  padding: 0.55rem 1rem;
  font-size: 0.72rem;
  font-weight: 600;
  border-bottom: 1px solid var(--dz-city-border);
}
.dz-city-devices {
  flex: 1;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.75rem;
  padding: 1.25rem;
}
.dz-city-device {
  background: #fff;
  border: 1.5px solid var(--dz-city-light);
  border-radius: 12px;
  padding: 1rem;
  text-align: center;
  box-shadow: 0 2px 12px rgba(13, 95, 219, 0.1);
}
.dz-city-device i {
  display: block;
  font-size: 1.75rem;
  color: var(--dz-city);
  margin-bottom: 0.35rem;
}
.dz-city-device span {
  font-size: 0.8rem;
  font-weight: 700;
  color: var(--dz-city);
}
.dz-city-eco {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.5rem;
  padding: 0.65rem 1rem;
  background: rgba(13, 95, 219, 0.06);
  border-top: 1px solid var(--dz-city-border);
}
.dz-city-eco span {
  font-size: 0.7rem;
  font-weight: 600;
  color: var(--dz-city);
  background: #fff;
  border: 1px solid rgba(13, 95, 219, 0.2);
  border-radius: 100px;
  padding: 0.3rem 0.75rem;
}
.dz-visual-city .dz-visual-foot {
  background: rgba(13, 95, 219, 0.08);
  color: var(--dz-city);
  border-top-color: var(--dz-city-border);
}

@media (max-width: 575.98px) {
  .dz-promo-slide { padding: 2rem 0; min-height: auto; }
  .dz-promo-actions .btn-lg { width: 100%; }
  .dz-ring-node { font-size: 0.62rem; padding: 0.4rem 0.5rem; }
  .dz-ring-node.pos-tr, .dz-ring-node.pos-br { right: 0; }
  .dz-ring-node.pos-tl, .dz-ring-node.pos-bl { left: 0; }
  .dz-gov-corner { min-width: 82px; padding: 0.45rem 0.5rem; }
  .dz-gov-corner strong { font-size: 0.68rem; }
  .dz-promo-strip-inner { gap: 0.35rem 1rem; }
  .dz-strip-item { font-size: 0.8rem; }
}

/* ========== 解决方案大图展示 ========== */
.dz-solution-showcase {
  padding: 3rem 0;
  border-bottom: 1px solid var(--dz-border);
}
.dz-solution-showcase:last-child {
  border-bottom: none;
  padding-bottom: 0;
}
.dz-solution-showcase:first-child {
  padding-top: 0;
}
.dz-solution-tag {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.35rem 0.85rem;
  border-radius: 100px;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  margin-bottom: 1rem;
}
.dz-solution-showcase.medical .dz-solution-tag {
  background: rgba(0, 200, 200, 0.12);
  color: var(--dz-medical);
}
.dz-solution-showcase.gov .dz-solution-tag {
  background: rgba(222, 41, 16, 0.1);
  color: var(--dz-gov);
}
.dz-solution-showcase.city .dz-solution-tag {
  background: rgba(13, 95, 219, 0.1);
  color: var(--dz-city);
}
.dz-solution-showcase.medical .dz-loop-step .step-num {
  background: var(--dz-medical-gradient);
}
.dz-solution-showcase.gov .dz-loop-step .step-num {
  background: var(--dz-gov-gradient);
}
.dz-solution-showcase.city .dz-loop-step .step-num {
  background: var(--dz-city-gradient);
}
.dz-solution-showcase.medical .dz-feature-list li i { color: var(--dz-medical); }
.dz-solution-showcase.medical .dz-cap-item i { color: var(--dz-medical) !important; }
.dz-solution-showcase.gov .dz-feature-list li i { color: var(--dz-gov); }
.dz-solution-showcase.gov .dz-cap-item i { color: var(--dz-gov) !important; }
.dz-solution-showcase.city .dz-feature-list li i { color: var(--dz-city); }
.dz-solution-showcase.city .dz-cap-item i { color: var(--dz-city) !important; }
.dz-solution-showcase.medical .ref-note { border-left-color: var(--dz-medical); }
.dz-solution-showcase.gov .ref-note { border-left-color: var(--dz-gov); }
.dz-solution-showcase.city .ref-note { border-left-color: var(--dz-city); }
.dz-cap-item i.medical-theme { color: var(--dz-medical) !important; }
.dz-cap-item i.gov-theme { color: var(--dz-gov) !important; }
.dz-cap-item i.city-theme { color: var(--dz-city) !important; }
.dz-solution-showcase h3 {
  font-size: clamp(1.35rem, 3.5vw, 1.85rem);
  font-weight: 800;
  color: var(--dz-dark);
  margin-bottom: 1rem;
  line-height: 1.35;
}
.dz-solution-showcase .ref-note {
  font-size: 0.8rem;
  color: var(--dz-text-muted);
  font-style: italic;
  margin-bottom: 1.25rem;
  padding-left: 0.75rem;
  border-left: 3px solid var(--dz-border);
}
.dz-solution-img-wrap {
  position: relative;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: var(--dz-shadow);
  background: #fff;
}
.dz-solution-img-wrap img {
  width: 100%;
  height: auto;
  display: block;
}
.dz-solution-img-wrap .img-caption {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 0.75rem 1rem;
  background: linear-gradient(transparent, rgba(10, 22, 40, 0.75));
  color: #fff;
  font-size: 0.8rem;
  font-weight: 600;
}
.dz-loop-steps {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin: 1.25rem 0;
}
.dz-loop-step {
  flex: 1 1 calc(33.333% - 0.5rem);
  min-width: 100px;
  background: var(--dz-bg);
  border-radius: 10px;
  padding: 0.85rem 0.65rem;
  text-align: center;
  position: relative;
  border: 1px solid var(--dz-border);
}
.dz-loop-step .step-num {
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: var(--dz-gradient);
  color: #fff;
  font-size: 0.7rem;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 0.35rem;
}
.dz-loop-step .step-title {
  font-size: 0.8rem;
  font-weight: 700;
  color: var(--dz-dark);
  display: block;
}
.dz-loop-step .step-desc {
  font-size: 0.7rem;
  color: var(--dz-text-muted);
  margin-top: 0.2rem;
  display: block;
  line-height: 1.4;
}
.dz-solution-showcase.medical .dz-loop-step .step-num {
  background: var(--dz-medical-gradient);
}
.dz-solution-showcase.gov .dz-loop-step .step-num {
  background: var(--dz-gov-gradient);
}
.dz-solution-showcase.city .dz-loop-step .step-num {
  background: var(--dz-city-gradient);
}
.dz-feature-list {
  list-style: none;
  padding: 0;
  margin: 0;
}
.dz-feature-list li {
  display: flex;
  align-items: flex-start;
  gap: 0.6rem;
  padding: 0.5rem 0;
  font-size: 0.9rem;
  color: var(--dz-text);
}
.dz-feature-list li i {
  color: var(--dz-primary);
  margin-top: 0.15rem;
  flex-shrink: 0;
}
.dz-solution-showcase.gov .dz-feature-list li i { color: var(--dz-gov); }
.dz-solution-showcase.city .dz-feature-list li i { color: var(--dz-city); }
.dz-solution-showcase.medical .dz-feature-list li i { color: var(--dz-medical); }

/* 三位一体 / 五维能力条 */
.dz-capability-bar {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.75rem;
  margin-top: 1.5rem;
}
.dz-capability-bar.five {
  grid-template-columns: repeat(2, 1fr);
}
@media (min-width: 576px) {
  .dz-capability-bar.five { grid-template-columns: repeat(5, 1fr); }
}
.dz-cap-item {
  background: #fff;
  border: 1px solid var(--dz-border);
  border-radius: 10px;
  padding: 1rem 0.75rem;
  text-align: center;
}
.dz-cap-item i {
  font-size: 1.5rem;
  display: block;
  margin-bottom: 0.4rem;
}
.dz-cap-item strong {
  display: block;
  font-size: 0.85rem;
  color: var(--dz-dark);
  margin-bottom: 0.25rem;
}
.dz-cap-item span {
  font-size: 0.7rem;
  color: var(--dz-text-muted);
  line-height: 1.4;
}

/* 政企服务理念 */
.dz-service-promise {
  background: linear-gradient(135deg, #0a1628 0%, #0f2744 100%);
  border-radius: 20px;
  padding: 2.5rem;
  color: #fff;
  margin-top: 3rem;
}
.dz-service-promise h4 {
  font-weight: 800;
  margin-bottom: 0.5rem;
}
.dz-service-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
  margin-top: 1.5rem;
}
@media (min-width: 768px) {
  .dz-service-grid { grid-template-columns: repeat(5, 1fr); }
}
.dz-service-item {
  text-align: center;
  padding: 1.25rem 0.75rem;
  background: rgba(255, 255, 255, 0.06);
  border-radius: var(--dz-radius);
  border: 1px solid rgba(255, 255, 255, 0.08);
  transition: background 0.25s;
}
.dz-service-item:hover {
  background: rgba(13, 95, 219, 0.2);
}
.dz-service-item i {
  font-size: 1.75rem;
  color: var(--dz-accent);
  display: block;
  margin-bottom: 0.65rem;
}
.dz-service-item strong {
  display: block;
  font-size: 0.85rem;
  margin-bottom: 0.25rem;
}
.dz-service-item span {
  font-size: 0.7rem;
  opacity: 0.7;
  line-height: 1.4;
}

/* 对比参考条 */
.dz-ref-bar {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 1rem;
}
.dz-ref-chip {
  font-size: 0.7rem;
  padding: 0.3rem 0.65rem;
  border-radius: 6px;
  background: var(--dz-bg);
  color: var(--dz-text-muted);
  border: 1px dashed var(--dz-border);
}

@media (max-width: 991.98px) {
  .dz-loop-step { flex: 1 1 calc(50% - 0.5rem); }
  .dz-capability-bar { grid-template-columns: 1fr; }
  .dz-solution-showcase .order-mobile-img-first {
    order: -1;
    margin-bottom: 1.5rem;
  }
}
@media (max-width: 575.98px) {
  .dz-loop-step { flex: 1 1 100%; }
  .dz-standards-banner { padding: 1.5rem; }
  .dz-service-promise { padding: 1.75rem; }
  .dz-service-grid { grid-template-columns: 1fr; }
}

/* ========== 数字医疗深度板块（参考腾讯健康体系） ========== */
.dz-healthcare-section {
  background: linear-gradient(180deg, var(--dz-medical-bg) 0%, #fff 28%, #fff 100%);
  border-top: 1px solid var(--dz-medical-border);
  border-bottom: 1px solid var(--dz-medical-border);
  padding: 4rem 0;
  margin: 3rem 0 0;
}
.dz-healthcare-intro {
  background: var(--dz-medical-gradient);
  border-radius: 16px;
  padding: 2rem 2.5rem;
  color: #fff;
  margin-bottom: 2.5rem;
  position: relative;
  overflow: hidden;
}
.dz-healthcare-intro::after {
  content: "";
  position: absolute;
  right: -8%;
  top: -50%;
  width: 260px;
  height: 260px;
  background: radial-gradient(circle, rgba(255,255,255,0.14) 0%, transparent 70%);
  pointer-events: none;
}
.dz-healthcare-intro h3 {
  font-size: clamp(1.25rem, 3vw, 1.65rem);
  font-weight: 800;
  margin-bottom: 0.75rem;
}
.dz-healthcare-intro p {
  margin: 0;
  opacity: 0.92;
  line-height: 1.75;
  max-width: 820px;
}
.dz-med-solution-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
  margin-bottom: 2.5rem;
}
@media (min-width: 992px) {
  .dz-med-solution-grid { grid-template-columns: repeat(4, 1fr); }
}
.dz-med-solution-card {
  background: #fff;
  border: 1px solid var(--dz-medical-border);
  border-radius: var(--dz-radius);
  padding: 1.35rem 1.15rem;
  height: 100%;
  transition: transform 0.25s, box-shadow 0.25s;
  border-top: 3px solid var(--dz-medical);
}
.dz-med-solution-card:hover {
  transform: translateY(-3px);
  box-shadow: var(--dz-medical-shadow);
}
.dz-med-solution-card .icon {
  width: 44px;
  height: 44px;
  border-radius: 10px;
  background: rgba(0, 200, 200, 0.12);
  color: var(--dz-medical);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.35rem;
  margin-bottom: 0.85rem;
}
.dz-med-solution-card h5 {
  font-size: 0.95rem;
  font-weight: 700;
  color: var(--dz-dark);
  margin-bottom: 0.45rem;
}
.dz-med-solution-card p {
  font-size: 0.78rem;
  color: var(--dz-text-muted);
  margin: 0;
  line-height: 1.6;
}
.dz-trinity-block {
  margin-bottom: 2.5rem;
}
.dz-trinity-block .block-title {
  text-align: center;
  margin-bottom: 1.75rem;
}
.dz-trinity-block .block-title h4 {
  font-weight: 800;
  color: var(--dz-dark);
  margin-bottom: 0.35rem;
}
.dz-trinity-block .block-title p {
  color: var(--dz-text-muted);
  font-size: 0.9rem;
  margin: 0;
}
.dz-trinity-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
}
@media (min-width: 768px) {
  .dz-trinity-grid { grid-template-columns: repeat(3, 1fr); }
}
.dz-trinity-card {
  background: #fff;
  border-radius: var(--dz-radius);
  border: 1px solid var(--dz-medical-border);
  padding: 1.5rem;
  height: 100%;
}
.dz-trinity-card .head {
  display: flex;
  align-items: center;
  gap: 0.65rem;
  margin-bottom: 1rem;
  padding-bottom: 0.85rem;
  border-bottom: 1px solid var(--dz-medical-border);
}
.dz-trinity-card .head i {
  font-size: 1.5rem;
  color: var(--dz-medical);
}
.dz-trinity-card .head strong {
  font-size: 1.05rem;
  color: var(--dz-dark);
}
.dz-trinity-card ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.dz-trinity-card li {
  font-size: 0.82rem;
  color: var(--dz-text);
  padding: 0.35rem 0 0.35rem 1.1rem;
  position: relative;
  line-height: 1.55;
}
.dz-trinity-card li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.65rem;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--dz-medical);
}
.dz-med-ai-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
}
@media (min-width: 576px) {
  .dz-med-ai-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 992px) {
  .dz-med-ai-grid { grid-template-columns: repeat(3, 1fr); }
}
.dz-med-ai-card {
  background: #fff;
  border: 1px solid var(--dz-border);
  border-radius: var(--dz-radius);
  padding: 1.25rem;
  height: 100%;
}
.dz-med-ai-card .tag {
  display: inline-block;
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  color: var(--dz-medical);
  background: rgba(0, 200, 200, 0.1);
  padding: 0.2rem 0.5rem;
  border-radius: 4px;
  margin-bottom: 0.5rem;
}
.dz-med-ai-card h6 {
  font-size: 0.9rem;
  font-weight: 700;
  color: var(--dz-dark);
  margin-bottom: 0.4rem;
}
.dz-med-ai-card p {
  font-size: 0.78rem;
  color: var(--dz-text-muted);
  margin: 0;
  line-height: 1.6;
}
.dz-med-benefits {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
  margin-top: 2.5rem;
}
@media (min-width: 768px) {
  .dz-med-benefits { grid-template-columns: repeat(4, 1fr); }
}
.dz-med-benefit-item {
  text-align: center;
  padding: 1.25rem 0.85rem;
  background: rgba(0, 200, 200, 0.06);
  border-radius: var(--dz-radius);
  border: 1px solid var(--dz-medical-border);
}
.dz-med-benefit-item i {
  font-size: 1.65rem;
  color: var(--dz-medical);
  display: block;
  margin-bottom: 0.5rem;
}
.dz-med-benefit-item strong {
  display: block;
  font-size: 0.85rem;
  color: var(--dz-dark);
  margin-bottom: 0.25rem;
}
.dz-med-benefit-item span {
  font-size: 0.72rem;
  color: var(--dz-text-muted);
  line-height: 1.45;
}
.dz-products-subtitle {
  grid-column: 1 / -1;
  padding: 0.5rem 0 0.25rem;
  border-top: 1px dashed var(--dz-medical-border);
  margin-top: 0.5rem;
}
.dz-products-subtitle h6 {
  font-size: 0.95rem;
  font-weight: 700;
  color: var(--dz-medical);
  margin: 0;
}
