/* ============ 智规律官网底色风格对齐（v7） ============
 * 参考 https://www.airegular.com 真实配色：
 *   页面底 #060B1A / 卡片 #0D1B2E / 区块 #080F20
 *   科技蓝主色 #0A66C2 → #1A7AE0 / 深蓝 #08529B
 *   金色 #D4AF37 / #E8D07A
 *   文字：主 #FFFFFF / 次 #D1D9F0 / 弱 #8A96B8
 *   卡片边框 rgba(10,102,194,.15)，hover 顶部渐变线
 * 本文件最后加载，将全站底色与文字风格对齐智规律。
 */

/* —— 变量对齐 —— */
:root {
  --brand: #0A66C2;
  --brand-2: #1A7AE0;
  --brand-grad: linear-gradient(135deg, #0A66C2 0%, #1A7AE0 100%);
  --gold: #D4AF37;
  --gold-light: #E8D07A;
  --dark: #060B1A;
  --dark-2: #0D1B2E;
  --dark-3: #080F20;
  --ink: #FFFFFF;
  --muted: #8A96B8;
  --text-secondary: #D1D9F0;
  --line: rgba(10, 102, 194, 0.15);
  --white: #FFFFFF;
  --shadow: 0 8px 24px rgba(0, 0, 0, .4);
  --shadow-lg: 0 12px 40px rgba(0, 0, 0, .5);
  --radius: 12px;
}

/* —— 页面底色 —— */
body { background: #060B1A; color: #FFFFFF; }
h1, h2, h3, h4 { color: #FFFFFF; }

/* —— 顶部条 / 导航：智规律毛玻璃深底 —— */
.topbar { background: rgba(6, 11, 26, .95); color: rgba(255,255,255,.75); }
.topbar span { color: rgba(255,255,255,.78); }
.topbar .topbar-phone { color: var(--gold-light); }
.nav { background: rgba(6, 11, 26, .95); backdrop-filter: blur(12px); border-bottom: 1px solid var(--line); }
.nav.scrolled { background: rgba(6, 11, 26, .98); box-shadow: 0 8px 24px rgba(0,0,0,.4); }
.menu-link { color: var(--text-secondary); }
.menu-link:hover, .menu-link.active { color: #0A66C2; background: rgba(10,102,194,.1); }
.menu-link::after { background: #0A66C2; }
.nav-cta { background: linear-gradient(135deg, #0A66C2, #1A7AE0); color: #fff; border: none; box-shadow: 0 8px 24px rgba(10,102,194,.3); }
.nav-cta:hover { box-shadow: 0 12px 32px rgba(10,102,194,.45); }

/* —— Hero：智规律深底 + 科技蓝/紫/青光晕 —— */
.hero {
  background:
    radial-gradient(ellipse at 50% 40%, rgba(10, 102, 194, .25) 0%, transparent 65%),
    radial-gradient(ellipse at 80% 20%, rgba(123, 47, 255, .15) 0%, transparent 50%),
    radial-gradient(ellipse at 20% 80%, rgba(0, 212, 255, .08) 0%, transparent 50%),
    linear-gradient(135deg, #060B1A 0%, #080F20 100%);
}
.hero::after { background: none; }
.hero-bg { opacity: .25; }
.hero h1 { color: #FFFFFF; }
.hero h1 .accent { color: #1A7AE0; }
.hero p.hero-sub, .hero .hero-aside p { color: var(--text-secondary); }
.hero .hero-eyebrow { color: #0A66C2; }
.hero-frame { border-color: rgba(10, 102, 194, .25); }
.hero-stats-grid { background: rgba(13, 27, 46, .8); border: 1px solid var(--line); }
.hero-stat { border-right-color: rgba(255,255,255,.06); }
.hero .hero-stat-num { color: #FFFFFF; }
.hero .hero-stat-num span { color: #E8D07A; }
.hero .hero-stat-label { color: var(--text-secondary); }

/* 轮播海报：深底上柔和呈现 */
.hero-slide { animation-name: heroSlideDark; filter: saturate(.9) brightness(.95); }
@keyframes heroSlideDark {
  0%   { opacity: 0; transform: scale(1.02); }
  5%   { opacity: .30; }
  17%  { opacity: .30; }
  22%  { opacity: 0; transform: scale(1.05); }
  100% { opacity: 0; }
}

/* —— 区块：深蓝黑分层 —— */
.section-blue { background: linear-gradient(180deg, #060B1A 0%, #080F20 100%); }
.section-dark { background: linear-gradient(180deg, #050D1F 0%, #060B1A 100%); }
.section-cream { background: #080F20; }
.section { background: transparent; }
.section-blue .section-head h2,
.section-dark .section-head h2 { color: #FFFFFF; }
.section-blue h3, .section-dark h3 { color: #FFFFFF; }
.section-blue .section-sub, .section-dark .section-sub { color: var(--text-secondary); }
.section-blue .section-kicker { color: #0A66C2; }
.section-kicker { color: #0A66C2; }

/* —— 卡片：智规律 #0D1B2E + 蓝边框 + hover 顶部渐变线 —— */
.section-blue .area-card,
.section-blue .why-card,
.section-blue .team-card,
.section-blue .case-card,
.section-blue .news-card,
.section-blue .group-card,
.section-blue .promise-card,
.section-dark .why-card,
.section-dark .promise-card,
.area-row, .lawyer-card, .sv-card, .case-card, .news-card,
.aside-card, .contact-form-card, .law-item, .menu-content, .article-wrap {
  background: #0D1B2E;
  border: 1px solid rgba(10, 102, 194, .15);
  box-shadow: 0 8px 24px rgba(0, 0, 0, .3);
  border-radius: 12px;
  position: relative; overflow: hidden;
}
.section-blue .area-card::before,
.section-blue .team-card::before,
.section-blue .case-card::before,
.section-blue .news-card::before,
.section-blue .group-card::before,
.area-row::before, .lawyer-card::before, .sv-card::before,
.aside-card::before, .law-item::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px;
  background: linear-gradient(135deg, #0A66C2, #1A7AE0);
  opacity: 0; transition: opacity .25s;
}
.section-blue .area-card:hover,
.section-blue .team-card:hover,
.section-blue .case-card:hover,
.section-blue .news-card:hover,
.area-row:hover, .lawyer-card:hover, .sv-card:hover,
.aside-card:hover, .law-item:hover {
  transform: translateY(-6px);
  border-color: rgba(10, 102, 194, .4);
  box-shadow: 0 12px 40px rgba(0, 0, 0, .5);
}
.section-blue .area-card:hover::before,
.section-blue .team-card:hover::before,
.section-blue .case-card:hover::before,
.section-blue .news-card:hover::before,
.area-row:hover::before, .lawyer-card:hover::before, .sv-card:hover::before,
.aside-card:hover::before, .law-item:hover::before { opacity: 1; }

/* —— 卡片文字：白 / 次级 / 弱化 —— */
.section-blue .area-card h3,
.section-blue .why-card h3,
.section-blue .team-card h3,
.section-blue .case-card h3,
.section-blue .news-card h3,
.section-blue .group-card h3,
.section-blue .promise-card h3,
.section-dark .why-card h3,
.section-dark .promise-card h3,
.area-row h3, .lawyer-card h3, .sv-card h3, .aside-card h4,
.lawyer-head h3, .detail-head h2, .detail-subhead { color: #FFFFFF; }
.section-blue .area-card p,
.section-blue .why-card p,
.section-blue .team-card p,
.section-blue .team-years,
.section-blue .team-tags span,
.section-blue .case-card p,
.section-blue .case-summary,
.section-blue .case-amount,
.section-blue .news-card p,
.section-blue .news-summary,
.section-blue .news-body p,
.section-blue .news-foot,
.section-blue .news-date,
.section-blue .article-body,
.section-blue .empty,
.section-dark .why-card p,
.section-dark .promise-card p,
.area-row p, .lawyer-intro, .lawyer-meta, .case-summary, .news-summary,
.news-foot, .sv-desc, .sv-points li, .group-card p, .promise-card p,
.aside-card p, .aside-data span, .detail-content p, .detail-points li,
.about-intro, .about-philosophy p, .honor-list li,
.article-body, .menu-text, .law-full, .empty { color: var(--text-secondary); }
.section-blue .area-card p,
.section-blue .case-summary,
.section-blue .news-summary,
.section-blue .team-years,
.section-blue .news-foot,
.section-blue .news-date span,
.area-row p, .lawyer-meta, .case-summary, .news-summary, .news-foot,
.lawyer-intro, .sv-desc, .aside-card p { color: #8A96B8; }

/* 金色/品牌点缀 */
.section-blue .area-more,
.section-blue .news-more,
.section-blue .case-amount,
.section-blue .case-cat,
.section-blue .news-cat,
.section-blue .news-type,
.section-blue .team-title,
.section-blue .case-result,
.area-row .area-row-arrow, .law-cat { color: #E8D07A; }
.section-blue .case-result { background: rgba(212,175,55,.12); }
.section-blue .case-cat, .section-blue .news-cat, .section-blue .news-type { background: rgba(10,102,194,.15); }
.section-blue .team-tags span, .lawyer-tags span { background: rgba(10,102,194,.12); border-color: rgba(10,102,194,.25); color: var(--text-secondary); }
.section-blue .area-icon, .section-blue .why-icon { background: rgba(10,102,194,.15); }
.section-blue .case-card { border-top-color: transparent; }
.section-blue .case-card::before { background: linear-gradient(135deg, #D4AF37, #E8D07A); }
.section-blue .news-card::after { background: linear-gradient(90deg, #0A66C2, #1A7AE0); }
.section-blue .btn-outline { border-color: rgba(10,102,194,.5); color: #1A7AE0; background: rgba(10,102,194,.08); }
.section-blue .btn-outline:hover { background: #0A66C2; color: #fff; border-color: #0A66C2; }

/* —— CTA：深蓝黑 + 光晕 —— */
.cta { background: linear-gradient(135deg, #060B1A 0%, #0D1B2E 100%); }
.cta::before { background: radial-gradient(600px 300px at 70% 20%, rgba(10,102,194,.2), transparent 70%); opacity: 1; }
.cta h2, .cta p, .cta li, .cta span { color: #FFFFFF; }
.cta-points li { color: var(--text-secondary); }
.cta-form { background: #0D1B2E; border: 1px solid rgba(10,102,194,.2); box-shadow: 0 12px 40px rgba(0,0,0,.5); }
.cta-form label { color: #FFFFFF; }
.cta-form input, .cta-form textarea,
.contact-form input, .contact-form textarea, .entrust-form input, .entrust-form textarea,
.form-row input, .form-row textarea, .aside-cta input {
  background: #080F20; border-color: rgba(10,102,194,.25); color: #FFFFFF;
}
.cta-form input::placeholder, .cta-form textarea::placeholder,
.contact-form input::placeholder, .form-row input::placeholder { color: #8A96B8; }
.form-note { color: #8A96B8; }

/* —— 内页横幅：深蓝黑 —— */
.banner { background: linear-gradient(135deg, #060B1A 0%, #0D1B2E 100%); }
.banner::after { background: radial-gradient(600px 300px at 80% 0%, rgba(10,102,194,.18), transparent 70%); }
.banner h1 { color: #FFFFFF; }
.banner .crumb { color: #8A96B8; }

/* —— 服务 CTA / 联系 / 关于 —— */
.sv-cta { background: linear-gradient(135deg, #060B1A 0%, #0D1B2E 100%); border: 1px solid rgba(10,102,194,.2); }
.sv-cta h3, .sv-cta p { color: #FFFFFF; }
.contact-info h2, .contact-info p, .contact-item strong { color: #FFFFFF; }
.contact-item p { color: var(--text-secondary); }
.contact-item span { color: #1A7AE0; }
.about-left h2, .about-right h3, .detail-head h2 { color: #FFFFFF; }
.about-data strong { color: #FFFFFF; }
.about-data span { color: #8A96B8; }
.honor-list li { background: #0D1B2E; border: 1px solid rgba(10,102,194,.15); color: var(--text-secondary); }
.article-meta { color: #8A96B8; }
.article-note { background: rgba(10,102,194,.08); color: #8A96B8; }

/* —— 筛选 / tab —— */
.news-filter a, .dj-tab { background: #0D1B2E; border-color: rgba(10,102,194,.2); color: var(--text-secondary); }
.news-filter a:hover, .dj-tab:hover { border-color: #0A66C2; color: #0A66C2; }
.news-filter a.on, .dj-tab.on { background: linear-gradient(135deg, #0A66C2, #1A7AE0); color: #fff; }

/* —— 金色按钮：保留金底深字（智规律金色点缀） —— */
.btn-gold { background: linear-gradient(135deg, #D4AF37, #E8D07A); color: #050914; border: none; }
.btn-gold:hover { box-shadow: 0 8px 24px rgba(212,175,55,.3); color: #050914; }

/* —— 页脚：更深一层的深蓝黑 —— */
.footer { background: linear-gradient(135deg, #050A18 0%, #060B1A 100%); }
.footer span, .footer a, .footer p, .footer li { color: #8A96B8; }
.footer h4, .footer .brand-text strong { color: #FFFFFF; }
.footer .footer-gov span { color: #8A96B8; }

/* ============ v8 对标适配：全站深色卡片统一 + 对比度修复 ============
 * 问题：服务范围/下设专业组/联系方式/方便群众/执业理念等卡片在
 *       front.css / migrated.css / upgrade.css 中为浅色（白/米）背景，
 *       但本主题将其文字设成白/浅色，导致“白底白字/浅字”不可读。
 * 处理：统一为智规律深色卡片（#0D1B2E）+ 白/次级文字 + 金色/科技蓝点缀。
 * ================================================================ */

/* 服务范围项 */
.detail-points li {
  background: #0D1B2E;
  border: 1px solid rgba(10, 102, 194, .15);
  color: var(--text-secondary);
  box-shadow: 0 6px 18px rgba(0, 0, 0, .25);
}
.detail-points li span { color: #1A7AE0; font-weight: 800; }
.detail-points li:hover { border-color: rgba(10, 102, 194, .4); }

/* 下设专业组（含专业领域详情页） */
.group-card { background: #0D1B2E; border: 1px solid rgba(10, 102, 194, .15); box-shadow: 0 8px 24px rgba(0, 0, 0, .3); }
.group-card h3 { color: #FFFFFF; }
.group-card p { color: var(--text-secondary); }
.group-card .group-services li { color: #8A96B8; }
.group-poster img { width: 100%; border-radius: 8px; display: block; margin-bottom: 12px; }

/* 联系方式 */
.contact-item { background: #0D1B2E; border: 1px solid rgba(10, 102, 194, .15); box-shadow: 0 6px 18px rgba(0, 0, 0, .25); }
.contact-item strong { color: #FFFFFF; }
.contact-item p { color: var(--text-secondary); }
.contact-sub { color: var(--text-secondary); }
.contact-promise { background: rgba(10, 102, 194, .10); border: 1px solid rgba(10, 102, 194, .2); border-radius: 10px; padding: 12px 16px; }
.contact-promise span { color: #E8D07A; }
.contact-map h3 { color: #FFFFFF; }
.contact-map iframe { border-color: rgba(10, 102, 194, .25) !important; }

/* 方便群众（公共法律服务导航） */
.conv-card { background: #0D1B2E; border: 1px solid rgba(10, 102, 194, .15); box-shadow: 0 8px 24px rgba(0, 0, 0, .3); }
.conv-card:hover { border-color: rgba(10, 102, 194, .4); box-shadow: 0 12px 40px rgba(0, 0, 0, .5); }
.conv-card h3 { color: #FFFFFF; }
.conv-card p { color: #8A96B8; }
.conv-card .conv-more { color: #1A7AE0; }
.conv-card .conv-icon { color: #E8D07A; }

/* 执业理念 / 关于我们右侧卡片 */
.about-right { background: #0D1B2E; border: 1px solid rgba(10, 102, 194, .15); border-left: 3px solid #1A7AE0; box-shadow: 0 8px 24px rgba(0, 0, 0, .3); }
.about-right h3 { color: #FFFFFF; }
.about-philosophy p { color: var(--text-secondary); }

/* 使命/愿景/价值观 */
.mvvm-card { background: #0D1B2E; border: 1px solid rgba(10, 102, 194, .15); box-shadow: 0 8px 24px rgba(0, 0, 0, .3); }
.mvvm-card h3 { color: #FFFFFF; }
.mvvm-card p { color: var(--text-secondary); }
.mvvm-icon { color: #E8D07A; }

/* ============ v8.1 Hero 区文字重叠修复 ============
 * front.css .hero h1 { white-space:nowrap } 导致长标题不换行横向溢出，
 * 与右侧律所简介(.hero-aside)重叠。此处覆盖为可换行，并保护左右两栏不挤叠。
 * ================================================================ */
.hero h1 { white-space: normal; max-width: 100%; color: #FFFFFF; text-shadow: 0 2px 24px rgba(0, 0, 0, .4); }
.hero-split .hero-content { min-width: 0; }
.hero-split .hero-aside { min-width: 0; word-break: break-word; }
.hero-sub { max-width: 100%; }

/* v8.2 Hero 布局微调：标题缩至一行、删除左上角装饰BUG、文字上移但顶部留白适中 */
.hero-frame, .hero-deco { display: none !important; }  /* 移除装饰框/天平，消除左上角绿色三角BUG */
.hero .reveal { opacity: 1 !important; transform: none !important; }  /* hero 首屏立即显示，不依赖滚动动画 */
.hero { padding-top: 26px !important; padding-bottom: 26px !important; }
.hero-inner { padding: 54px 24px 22px !important; }
.hero-inner.hero-split { align-items: flex-start !important; }  /* 左列顶部对齐，文字上移，避免被右侧简介撑高而居中下拉 */
.hero h1 { font-size: clamp(30px, 4vw, 46px); line-height: 1.3; letter-spacing: 1px; margin-bottom: 18px; }
.hero-eyebrow { margin-bottom: 12px; }
.hero-actions { margin-top: 2px; }
.hero-stats { padding: 4px 24px 30px; }
.hero-stats-grid { margin-top: 6px; }

/* 隐藏 hero 老官网海报轮播层：海报图自带"北京市子悦律师事务所/宏法治正/
 * 联系电话010-..."大文字，与前台 HTML 标题叠加造成混乱重叠。
 * 保留智规律纯渐变+光晕背景，仅作氛围，避免文字重影。 */
.hero-carousel { display: none !important; }

/* 右侧联系条：邮箱图标（律所邮箱），其余图标沿用 */
.rail-email { background: linear-gradient(135deg, #D97706, #B45309); }
.rail-item { transition: transform .2s; }

/* 右侧联系条新增：官网 / 智能体二维码图标 */
.rail-site { background: linear-gradient(135deg, #1A7AE0, #0A66C2); }
.rail-agent { background: linear-gradient(135deg, #D4AF37, #B8962E); }
/* 页脚二维码组：目标官网 / 智能法律咨询 */
.footer-qrs { display: flex; gap: 14px; flex-wrap: wrap; align-items: center; }
.footer-qrs .fqr { text-align: center; }
.footer-qrs .fqr img { width: 130px; height: 130px; object-fit: contain; background: #fff; border-radius: 12px; padding: 8px; }
.footer-qrs .fqr span { display: block; margin-top: 6px; color: #C0C9E0; font-size: 12.5px; }

/* 移动端：响应承诺等长文本强制换行，防止右缘溢出 */
@media (max-width: 768px) {
  .contact-promise, .contact-promise span { white-space: normal !important; word-break: break-word !important; overflow-wrap: break-word !important; }
  .contact-promise span { display: block; }
}

/* 法律费用计算器样式 */
.fee-tabs { display: flex; gap: 12px; flex-wrap: wrap; margin-bottom: 22px; }
.fee-tab { padding: 12px 20px; background: #0D1B2E; border: 1px solid rgba(10,102,194,.2); color: var(--text-secondary); border-radius: 10px; font-size: 14px; cursor: pointer; min-height: 44px; transition: .2s; }
.fee-tab.on, .fee-tab:hover { background: linear-gradient(135deg,#0A66C2,#1A7AE0); color:#fff; border-color: #0A66C2; }
.fee-panel { background:#0D1B2E; border:1px solid rgba(10,102,194,.15); border-radius:14px; padding:24px; box-shadow:0 8px 24px rgba(0,0,0,.3); }
.fee-form label { display:block; font-size:14px; color:#E6EBF7; margin-bottom:8px; font-weight:600; }
.fee-form input, .fee-form select { width:100%; padding:12px 14px; background:#0A1326; border:1px solid rgba(10,102,194,.25); color:#fff; border-radius:10px; font-size:16px; }
.fee-form input:focus, .fee-form select:focus { border-color:#D4AF37; outline:none; }
.fee-result { margin-top:16px; padding:14px 16px; background:rgba(10,102,194,.08); border:1px solid rgba(10,102,194,.2); border-radius:10px; color:var(--text-secondary); line-height:1.8; }
.fee-result small { color:#8A96B8; }
.fee-rule { margin-top:16px; padding:12px 16px; background:rgba(255,255,255,.04); border-radius:10px; font-size:12.5px; color:#8A96B8; line-height:1.9; }
.detail-poster { margin-bottom:18px; }
.detail-poster img { width:100%; border-radius:12px; display:block; }
