/* 律师 GEO 主页公共样式，来自定版 HTML 合并 */
* { font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", sans-serif; }
html { scroll-behavior: smooth; }
body { overflow-x:hidden; }
.serif-title { font-family: "Noto Serif SC", "Songti SC", "SimSun", serif; }
.nav-link { position: relative; }
.nav-link::after { content:""; position:absolute; left:50%; bottom:-4px; width:0; height:2px; background:#c9a45c; transition:all .3s; transform:translateX(-50%); }
.nav-link:hover::after, .nav-link.active::after { width:100%; }
.gold-text { background: linear-gradient(135deg,#e8c878,#c9a45c,#e8c878); -webkit-background-clip:text; background-clip:text; color:transparent; }
.section-title-bar { width:48px; height:3px; background:linear-gradient(90deg,#c9a45c,#e8c878); border-radius:2px; }
.card-hover { transition:all .35s ease; }
.card-hover:hover { transform:translateY(-6px); box-shadow:0 20px 40px rgba(15,30,61,.12); }
.case-tag { letter-spacing:.05em; }
#particles { position:absolute; inset:0; overflow:hidden; pointer-events:none; }
.particle { position:absolute; border-radius:50%; background:rgba(201,164,92,.25); animation:floatUp linear infinite; }
@keyframes floatUp { 0%{ transform:translateY(0) scale(1); opacity:0; } 10%{opacity:1;} 90%{opacity:1;} 100%{ transform:translateY(-90vh) scale(.4); opacity:0; } }
.article-item { transition:all .3s; }
.article-item:hover { background:#f8fafc; }
.article-item:hover .article-title { color:#1d4ed8; }
.float-bar { display:none; width:100%; }
.float-bar { padding-bottom:env(safe-area-inset-bottom); }
.float-bar > div { display:flex; width:100%; }
.float-bar a { flex:1 1 50%; width:50%; min-width:0; display:flex; align-items:center; justify-content:center; gap:8px; padding:14px 0; font-size:14px; font-weight:700; }
.float-bar a:first-child { color:#0f1e3d; background:#fff; }
.float-bar a:last-child { color:#c9a45c; background:#0f1e3d; }
.float-bar a svg { width:16px; height:16px; flex:0 0 16px; }
@media (max-width:768px){ .float-bar { display:flex; } body { padding-bottom:56px; padding-bottom:calc(56px + env(safe-area-inset-bottom)); } }
.badge-pulse { animation:pulse 2s infinite; }
@keyframes pulse { 0%,100%{ box-shadow:0 0 0 0 rgba(201,164,92,.5);} 50%{ box-shadow:0 0 0 8px rgba(201,164,92,0);} }
.article-h2 { font-size:1.15rem; font-weight:700; color:#0f1e3d; margin-bottom:.75rem; }
.case-summary { border-left:3px solid #c9a45c; }

/* 手机页脚收紧间距，避免电话、地址和版权区域被窄屏撑高。 */
@media (max-width:768px){
  footer.lawyer-footer .lawyer-footer__inner { padding:32px 20px 24px; }
  footer.lawyer-footer .lawyer-footer__grid { grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr); gap:24px 20px; }
  footer.lawyer-footer .lawyer-footer__intro { grid-column:1 / -1; }
  footer.lawyer-footer .lawyer-footer__intro > p.text-sm { line-height:1.7; }
  footer.lawyer-footer .lawyer-footer__phone { flex-direction:row; flex-wrap:wrap; gap:8px; margin-top:20px; padding:12px 14px; border-radius:14px; }
  footer.lawyer-footer .lawyer-footer__phone-label { font-size:13px; line-height:1.4; white-space:nowrap; }
  footer.lawyer-footer .lawyer-footer__phone-number { font-size:18px; line-height:1.4; white-space:nowrap; }
  footer.lawyer-footer .lawyer-footer__phone-note { margin-top:6px; line-height:1.5; }
  footer.lawyer-footer .lawyer-footer__nav > div,
  footer.lawyer-footer .lawyer-footer__contact > div { margin-bottom:12px; }
  footer.lawyer-footer .lawyer-footer__contact-list { line-height:1.55; }
  footer.lawyer-footer .lawyer-footer__contact-list li { display:flex; align-items:flex-start; gap:4px; }
  footer.lawyer-footer .lawyer-footer__contact-list li span { flex:0 0 auto; }
  footer.lawyer-footer .lawyer-footer__bottom { margin-top:28px; padding-top:18px; gap:8px; line-height:1.5; }
  footer.lawyer-footer .lawyer-footer__bottom > div { justify-content:center; }
}

/* 富文本正文约束：编辑器输出的图片、宽表格和代码块在窄屏下不撑破卡片。 */
.rich-content { min-width:0; overflow-wrap:break-word; word-break:break-word; }
.rich-content img { max-width:100%; height:auto; }
.rich-content table { display:block; max-width:100%; overflow-x:auto; -webkit-overflow-scrolling:touch; }
.rich-content pre { max-width:100%; overflow-x:auto; }
