/* V24: 全站正文减小 1px + 按钮悬停文字可见性修复 */
:root{
  --fg-text-main:#1f2937;
  --fg-text-sub:#526174;
  --fg-text-muted:#6b7687;
  --fg-blue:#005BAC;
  --fg-blue-dark:#004985;
}

/* 基础文字：除 H1/H2 与 Banner 大标题外，整体更轻、更紧凑 */
body{
  color:var(--fg-text-main)!important;
  font-size:15px!important;
  line-height:1.7!important;
  font-weight:400!important;
  letter-spacing:.005em!important;
}

/* 顶部菜单：按要求统一 14px */
.navbar,
.nav-links a,
.navbar a,
.nav-consult-btn{
  font-size:14px!important;
  font-weight:500!important;
  letter-spacing:.01em!important;
}
.top-bar,.top-bar a,.top-bar span{font-size:13px!important;font-weight:400!important;}
.logo{font-size:21px!important;font-weight:600!important;}
.logo-mark{font-weight:600!important;}

/* 正文与详情页内容：统一 14px */
p,li,
.section-desc,
.service-card p,
.feature-item p,
.case-card-body p,
.news-card-body p,
.footer p,
.footer li,
.article-content,
.article-content p,
.article-content li,
.case-detail-content,
.case-detail-content p,
.case-detail-content li,
.news-detail-content,
.news-detail-content p,
.news-detail-content li,
.fg-detail-content,
.fg-detail-content p,
.fg-v9-news-main p,
.fg-v18-card p,
.ai-section p,
.ai-card p,
.ai-hero p,
.ai-hero li{
  font-size:14px!important;
  line-height:1.78!important;
  font-weight:400!important;
  color:var(--fg-text-sub)!important;
}

/* H1/H2 与 banner 文字不做减小，只统一权重，避免过黑 */
h1,h2,.page-banner h1,.hero-section h1,.hero-title,.section-title{
  font-weight:600!important;
  letter-spacing:-.015em!important;
}
.page-banner p,.hero-section p,.hero-subtitle{
  font-size:inherit;
}

/* H3/H4 等非大标题减重并略缩小，接近企业官网层级 */
h3,.service-card h3,.feature-item h4,.case-card-body h3,.news-card-body h3,
.fg-v18-card h3,.pricing-card h3,.ai-card h3,.ai-section h3,
.footer h4{
  color:#1d2433!important;
  font-weight:560!important;
  font-size:18px!important;
  line-height:1.45!important;
  letter-spacing:-.005em!important;
}
h4,h5,h6{font-weight:540!important;color:#1d2433!important;}

/* 详情页元信息、小标签、小按钮文字 */
.news-card-date,.fg-v9-date,.section-label,.case-tags .tag,.fg-v9-news-meta,
.article-meta,.case-meta,.pagination a,.filter-tab,.filter-tabs button{
  font-size:13px!important;
  font-weight:500!important;
}

/* 卡片间距与文字呼吸感 */
.service-card,.feature-item,.case-card,.news-card,.pricing-card,.fg-v18-card,.ai-card{
  letter-spacing:0!important;
}
.service-card h3,.case-card-body h3,.news-card-body h3,.feature-item h4{margin-bottom:10px!important;}

/* 深色背景区域保持浅色，不受正文颜色影响 */
.hero-section,.page-banner,.footer,.cta-section,.stats-section,
.ai-hero,.ai-dark,.ai-stats,.fg-dark,.section-dark,
.hero-section *, .page-banner *, .footer *, .cta-section *, .stats-section *,
.ai-hero *, .ai-dark *, .ai-stats *, .fg-dark *, .section-dark *{
  color:rgba(255,255,255,.86)!important;
}
.hero-section h1,.page-banner h1,.cta-section h2,.footer h3,.footer h4,.stats-section .stat-number,
.ai-hero h1,.ai-dark h2,.ai-stats .stat-number,.section-dark h2{
  color:#fff!important;
}

/* 全站按钮 hover/active 修复：避免蓝底蓝字、深底黑字 */
.btn,
.nav-consult-btn,
.filter-tab,
.filter-tabs button,
.pagination a,
.contact-float-btn,
.contact-modal-submit,
button[type="submit"],
a[class*="btn"],
button[class*="btn"]{
  transition:background-color .22s ease,border-color .22s ease,color .22s ease,box-shadow .22s ease,transform .22s ease!important;
  text-decoration:none!important;
}

.filter-tab:hover,
.filter-tab.active,
.filter-tabs button:hover,
.filter-tabs button.active,
.pagination a:hover,
.pagination li.thisclass a,
.btn-primary:hover,
.btn:hover:not(.btn-white):not(.btn-outline-light),
.nav-consult-btn:hover,
.contact-modal-submit:hover,
button[type="submit"]:hover{
  background:var(--fg-blue)!important;
  border-color:var(--fg-blue)!important;
  color:#fff!important;
}

.filter-tab:hover *,
.filter-tab.active *,
.filter-tabs button:hover *,
.filter-tabs button.active *,
.pagination a:hover *,
.pagination li.thisclass a *,
.btn:hover *,
.nav-consult-btn:hover *,
.contact-modal-submit:hover *{
  color:inherit!important;
}

/* 白色按钮 hover 保持清晰 */
.btn-white,.btn.btn-white{
  background:#fff!important;
  color:var(--fg-blue)!important;
  border-color:#fff!important;
}
.btn-white:hover,.btn.btn-white:hover{
  background:#f4f8ff!important;
  color:var(--fg-blue-dark)!important;
  border-color:#f4f8ff!important;
}

/* 线框按钮 hover 改为蓝底白字 */
.btn-outline:hover,.btn.btn-outline:hover,
a.btn-outline:hover,
button.btn-outline:hover{
  background:var(--fg-blue)!important;
  border-color:var(--fg-blue)!important;
  color:#fff!important;
}

/* 某些内联样式或后加模块的按钮强制兜底 */
a[style*="background:var(--primary)"]:hover,
a[style*="background: var(--primary)"]:hover,
a[style*="background:#0057B3"]:hover,
a[style*="background: #0057B3"]:hover,
a[style*="background:#005BAC"]:hover,
a[style*="background: #005BAC"]:hover{
  color:#fff!important;
}

/* 禁用状态或普通浅底按钮不要在 hover 时丢失文字 */
button:hover,a:hover{ text-decoration:none!important; }

@media(max-width:768px){
  body{font-size:14px!important;}
  .nav-links a,.navbar a,.mobile-menu a{font-size:14px!important;}
  p,li,.article-content p,.case-detail-content p,.news-detail-content p{font-size:14px!important;line-height:1.76!important;}
  h3,.service-card h3,.case-card-body h3,.news-card-body h3,.fg-v18-card h3{font-size:17px!important;}
}
