/* ==================== 阿里巴巴普惠体 ==================== */
@font-face {
  font-family: "Alibaba PuHuiTi";
  src: url("../fonts/AlibabaPuHuiTi-3-55-Regular/AlibabaPuHuiTi-3-55-Regular.woff2") format("woff2"),
       url("../fonts/AlibabaPuHuiTi-3-55-Regular/AlibabaPuHuiTi-3-55-Regular.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
/* Noto Sans SC — 阿里巴巴普惠体不可用时的近似 fallback，Google Fonts CDN */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@400;500;700&display=swap');

/* ==================== 商务·专业·科技·大气 ==================== */
:root {
  --blue: #1A56DB; --blue-1: #EBF0FA; --blue-2: #D6E0F5; --blue-3: #AEC1EA; --blue-4: #85A2E0; --blue-5: #5D83D5; --blue-6: #1A56DB; --blue-7: #1545B0; --blue-8: #103485; --blue-9: #0B235A; --blue-10: #06122F;
  --success: #059669; --success-light: #ECFDF5; --warning: #D97706; --warning-light: #FFFBEB; --danger: #DC2626; --danger-light: #FEF2F2;
  --gray-1: #F9FAFB; --gray-2: #F3F4F6; --gray-3: #E5E7EB; --gray-4: #D1D5DB; --gray-5: #9CA3AF; --gray-6: #6B7280; --gray-7: #4B5563; --gray-8: #374151; --gray-9: #1F2937; --gray-10: #111827;
  --bg-primary: #FFFFFF; --bg-secondary: #F9FAFB; --bg-tertiary: #F3F4F6; --bg-dark: #111827; --bg-card: #FFFFFF; --bg-card-hover: #F9FAFB;
  --bg-blue-light: #EBF0FA; --blue-light: #5D83D5; --blue-dark: #103485; --bg-section: #FFFFFF; --bg-section-alt: #F3F4F6;
  --text-primary: #1A1A1A; --text-secondary: #5A5A5A; --text-tertiary: #9CA3AF; --text-placeholder: #D1D5DB;
  --text-white-1: rgba(255,255,255,1); --text-white-2: rgba(255,255,255,0.8); --text-white-3: rgba(255,255,255,0.55);
  --border-color: #E5E7EB; --border-light: #F3F4F6;
  --shadow-sm: 0 1px 2px rgba(0,0,0,0.04); --shadow-md: 0 4px 12px rgba(0,0,0,0.06); --shadow-lg: 0 8px 24px rgba(0,0,0,0.08); --shadow-xl: 0 12px 36px rgba(0,0,0,0.10);
  --radius-sm: 6px; --radius-md: 8px; --radius-lg: 12px; --radius-xl: 16px; --radius-2xl: 20px; --radius-round: 50px; --radius-full: 50%;
  --sp-4: 4px; --sp-8: 8px; --sp-12: 12px; --sp-16: 16px; --sp-24: 24px; --sp-32: 32px; --sp-40: 40px; --sp-48: 48px; --sp-64: 64px; --sp-80: 80px; --sp-96: 96px; --sp-120: 120px;
  --font-family: "Alibaba PuHuiTi", "阿里巴巴普惠体", "Noto Sans SC", "PingFang SC", "Microsoft YaHei", "Helvetica Neue", sans-serif;
  --font-size-base: 15px;
  --transition: 0.25s cubic-bezier(.4,0,.2,1); --transition-fast: 0.15s cubic-bezier(.4,0,.2,1);
}

/* ========== 全局修复 ========== */
html {
  scroll-behavior: smooth;
  scroll-padding-top: 90px;
}
body {
  background-color: var(--bg-primary) !important;
  color: var(--text-primary) !important;
  font-family: var(--font-family);
  font-weight: 400 !important;
  font-size: var(--font-size-base);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  line-height: 1.6;
}

/* 标题 */
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  font-weight: 700 !important;
  font-family: var(--font-family);
  color: var(--text-primary);
  letter-spacing: -0.02em;
}

/* 全局链接色 — 纯黑，hover 下划线 */
a, a:link, a:visited {
  color: #000000;
  text-decoration: none;
  transition: color 0.15s ease;
}
a:hover, a:focus {
  color: #000000;
  text-decoration: underline;
}
a:active {
  color: #000000;
}

/* 段落行高 */
p, li, td, .lead {
  line-height: 1.7;
}

/* ========== 辅助工具类 ========== */
.pt-16 { padding-top: var(--sp-16) !important; }
.pb-16 { padding-bottom: var(--sp-16) !important; }
.pt-24 { padding-top: var(--sp-24) !important; }
.pb-24 { padding-bottom: var(--sp-24) !important; }
.pt-32 { padding-top: var(--sp-32) !important; }
.pb-32 { padding-bottom: var(--sp-32) !important; }
.pt-48 { padding-top: var(--sp-48) !important; }
.pb-48 { padding-bottom: var(--sp-48) !important; }
.pt-64 { padding-top: var(--sp-64) !important; }
.pb-64 { padding-bottom: var(--sp-64) !important; }
.pt-80 { padding-top: var(--sp-80) !important; }
.pb-80 { padding-bottom: var(--sp-80) !important; }

.mt-8  { margin-top: var(--sp-8) !important; }
.mb-8  { margin-bottom: var(--sp-8) !important; }
.mt-16 { margin-top: var(--sp-16) !important; }
.mb-16 { margin-bottom: var(--sp-16) !important; }
.mt-24 { margin-top: var(--sp-24) !important; }
.mb-24 { margin-bottom: var(--sp-24) !important; }
.mt-32 { margin-top: var(--sp-32) !important; }
.mb-32 { margin-bottom: var(--sp-32) !important; }
.mt-48 { margin-top: var(--sp-48) !important; }
.mb-48 { margin-bottom: var(--sp-48) !important; }
.mt-64 { margin-top: var(--sp-64) !important; }
.mb-64 { margin-bottom: var(--sp-64) !important; }

/* ========== Framework 颜色覆盖 ========== */
.bg-primary, .btn-primary, .badge-primary {
  background-color: var(--blue) !important;
}
.bg-dark {
  background-color: var(--bg-dark) !important;
  color: #fff !important;
}
.bg-secondary {
  background-color: var(--bg-secondary) !important;
}
.text-primary, a.text-primary:hover { color: #000000 !important; }
.text-white  { color: #fff !important; }
.text-dark   { color: var(--text-primary) !important; }
.text-secondary { color: var(--text-secondary) !important; }
.text-tertiary  { color: var(--text-tertiary) !important; }
.text-info    { color: #000000 !important; }
.text-success { color: #000000 !important; }
.text-warning { color: #666666 !important; }
.text-danger  { color: #000000 !important; }
.bg-white     { background-color: var(--bg-card) !important; }
.border-primary { border-color: #000000 !important; }

/* ========== Topbar 导航栏 ========== */
.topbar.topbar-inverse,
.topbar.topbar-bg {
  background-color: rgba(255,255,255,0.97) !important;
  border-bottom: 1px solid var(--border-color);
  box-shadow: none;
  color: #000000 !important;
}
.topbar.topbar-bg {
  background-color: rgba(255,255,255,0.98) !important;
}

/* ========== Logo 尺寸 ========== */
.topbar-brand img {
  max-height: 38px !important;
}
.footer-logo-img {
  max-width: 150px !important;
}

/* 导航栏链接 */
.topbar .right-btn,
.topbar .right-btn:link,
.topbar .right-btn:visited,
.topbar .right-btn:hover,
.topbar .right-btn:focus,
.topbar .right-btn:active {
  color: #000000;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0;
  margin-right: 1.8rem;
  text-decoration: none;
  position: relative;
}
.topbar .right-btn::after {
  content: '';
  position: absolute;
  bottom: -4px; left: 0; right: 0;
  height: 2px;
  background: #000;
  transform: scaleX(0);
  transition: transform var(--transition);
}
.topbar .right-btn:hover::after {
  transform: scaleX(1);
}

/* ========== 按钮 ========== */
.btn {
  border-radius: var(--radius-sm);
  transition: all 0.15s ease;
  font-weight: 500;
}
a.btn, a.btn:hover, a.btn:focus, a.btn:active, a.btn:visited {
  color: inherit !important;
  text-decoration: none !important;
}

/* 所有黑色背景按钮 → 文字强制白色 */
.btn-primary,
.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary.active,
a.btn.btn-primary,
a.btn.btn-primary:hover,
a.btn.btn-primary:focus,
a.btn.btn-primary:active,
a.btn.btn-primary:visited,
a.btn.btn-primary.active,
.show > .btn-primary.dropdown-toggle {
  background: var(--blue) !important;
  border: none !important;
  color: #fff !important;
  font-weight: 500;
  box-shadow: 0 2px 8px rgba(26,86,219,0.12) !important;
}
.btn-primary:hover,
a.btn.btn-primary:hover {
  background: var(--blue-7) !important;
  color: #fff !important;
}
.btn-outline {
  border: 1px solid var(--border-color) !important;
  color: var(--text-primary) !important;
  background: transparent !important;
}
.btn-outline:hover {
  background: var(--blue) !important;
  color: #fff !important;
}
.btn-outline.btn-white {
  background: transparent !important;
  color: #000000 !important;
  border-color: #000000 !important;
}
.btn-outline.btn-white:hover {
  background: var(--blue) !important;
  color: #fff !important;
}
.btn-white {
  background-color: #fff !important;
  color: #000000 !important;
  border: 1px solid var(--border-color) !important;
}
.btn-white:hover {
  border-color: #000000 !important;
  color: #000000 !important;
  background-color: #FAFAFA !important;
}

/* ========== Section 区域 ========== */
.main-content .section:not(.section-contact):not(.section-superiority):not(.cta-section):not(.page-cta) {
  background: linear-gradient(180deg, #FFFFFF 0%, #FAFBFC 100%) !important;
  color: var(--text-primary);
}
.main-content .bb-11 {
  background: linear-gradient(180deg, #F8F9FB 0%, #F2F4F7 100%) !important;
}
.section-contact {
  background: var(--bg-dark) !important;
  color: #fff !important;
  padding-bottom: 48px !important;
}
.section-superiority {
  background: var(--bg-dark) url(/skin/lingmao2025/img/superiority-bg.png) no-repeat center center !important;
  background-size: cover !important;
  color: #fff !important;
}
.section-gradient {
  background: linear-gradient(180deg, #F8F9FB 0%, #F2F4F7 100%) !important;
}
.section-gradient-alt {
  background: linear-gradient(180deg, #FFFFFF 0%, #F9FAFB 100%) !important;
}

/* ========== Header Hero ========== */
.header-inverse,
.header-inverse h1, .header-inverse h2, .header-inverse h3, .header-inverse h4, .header-inverse h5, .header-inverse h6 {
  color: var(--text-primary) !important;
}
.header-inverse {
  background-color: transparent !important;
}
.header-inverse .scroll-down-inverse span {
  border-color: var(--text-tertiary) !important;
}
.header-inverse .scroll-down-inverse span::before {
  background-color: var(--text-tertiary) !important;
}

/* ========== Footer ========== */
.footer {
  background: #1A1A1A !important;
  border-top: none !important;
}
.footer a:hover { color: #fff !important; text-decoration: none; }

/* ========== 卡片系统 ========== */
.card {
  background: var(--bg-card) !important;
  border: 1px solid var(--border-color) !important;
  border-radius: var(--radius-sm);
  box-shadow: var(--shadow-sm);
  transition: box-shadow var(--transition), transform var(--transition);
}
.card:hover {
  box-shadow: var(--shadow-md);
  transform: translateY(-2px);
}
.card-sm {
  background: var(--bg-card);
  border: 1px solid var(--border-color);
  border-radius: var(--radius-sm);
  box-shadow: var(--shadow-sm);
  transition: box-shadow var(--transition), transform var(--transition);
}
.card-sm:hover { border-color: #D0D0D0; box-shadow: var(--shadow-md); transform: translateY(-2px); }
.card-md {
  background: var(--bg-card);
  border: 1px solid var(--border-color);
  border-radius: var(--radius-sm);
  box-shadow: var(--shadow-sm);
  transition: box-shadow var(--transition), transform var(--transition);
}
.card-md:hover { border-color: #D0D0D0; box-shadow: var(--shadow-md); transform: translateY(-2px); }
.card-lg {
  background: var(--bg-card);
  border: 1px solid var(--border-color);
  border-radius: var(--radius-sm);
  box-shadow: var(--shadow-sm);
  transition: box-shadow var(--transition), transform var(--transition);
}
.card-lg:hover { border-color: #D0D0D0; box-shadow: var(--shadow-md); transform: translateY(-2px); }

/* ========== 表单 ========== */
.form-control {
  background-color: #fff !important;
  border-color: var(--border-color) !important;
  color: var(--text-primary) !important;
  border-radius: var(--radius-sm);
}
.form-control:focus {
  border-color: #000000 !important;
  box-shadow: none !important;
}

/* ========== 阴影 ========== */
.shadow-1 { box-shadow: var(--shadow-sm) !important; }
.shadow-2 { box-shadow: var(--shadow-sm) !important; }
.shadow-3 { box-shadow: var(--shadow-md) !important; }
.shadow-4 { box-shadow: var(--shadow-md) !important; }
.shadow-5 { box-shadow: var(--shadow-lg) !important; }

/* ========== Section 标题 ========== */
.section-header h2::before, .section-header h2::after { display: none; }
.section-header p {
  color: var(--text-secondary);
  font-size: 16px;
  margin-top: var(--sp-12);
  font-weight: 400;
}

/* ========== 滚动入场动画 ========== */
.fade-up {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity 0.7s ease, transform 0.7s ease;
}
.fade-up.visible {
  opacity: 1;
  transform: translateY(0);
}

/* ========== 投屏/大屏优化 ========== */
@media (min-width: 1920px) {
  body { font-size: 18px; }

  /* Section 标题放大 */
  .section-header h2 { font-size: 44px !important; }
  .section-header .lead { font-size: 20px; }

  /* 卡片描述 */
  .feature-desc, .product-desc, .service-desc,
  .case-card .stat-label, .why-item .why-desc,
  .feature-item .feature-desc, .ai-item .ai-desc,
  .challenge-card .problem-item, .challenge-card .solution-item {
    font-size: 16px;
  }

  /* 产品卡片标题 */
  .product-name { font-size: 20px; }
  .feature-title, .ai-title, .case-title, .why-title,
  .challenge-card .card-title, .service-title { font-size: 20px; }

  /* 品牌区域 */
  .partner-brand-item-header { font-size: 22px; }

  /* CTA / Footer */
  .cta-section h2, .page-cta h2 { font-size: 42px; }
  .cta-section p, .page-cta p { font-size: 20px; }
  .footer-links a { font-size: 16px; }

  /* 企业数字化页 9大子系统 */
  .system-container .item .system-name { font-size: 22px; }
  .system-container .item div { font-size: 16px; }
  .system-container .item a { font-size: 16px; }

  /* 数据指标 */
  .case-card .stat-value { font-size: 30px; }
}

/* ========== 响应式 ========== */
@media (max-width: 767px) {
  body { font-size: 15px; }
  .section-header h2 { font-size: 26px !important; }
  .section-header .lead, .section-header p { font-size: 15px; }

  .feature-desc, .product-desc, .service-desc, .chose-desc,
  .case-card .stat-label, .why-desc, .ai-desc,
  .feature-item .feature-desc, .about-card-label,
  .dev-service-label, .service-intro, .partner-brand-item-header,
  .about-intro p { font-size: 14px; }

  .product-name, .feature-title, .ai-title, .case-title,
  .challenge-card .card-title, .service-title, .about-card-num,
  .feature-category-title { font-size: 18px; }

  .footer-links a { font-size: 14px; }
  .footer-tagline { font-size: 13px; }

  .topbar-right {
    background-color: rgba(255,255,255,0.98) !important;
    color: #000000 !important;
  }
  .topbar-right .right-btn {
    border-bottom: 1px solid var(--border-color) !important;
    color: var(--text-primary) !important;
  }
}
