/* ============================================================
   ui-criminal.css — 北京百环刑事辩护官网 统一视觉与移动端补充样式
   部署：在 functions.php 中 wp_enqueue_style 引入，或在 main.css 顶部 @import。
   主题：专业、克制、可信；深色文字 + 白底 + 低饱和品牌色；无排行榜/炫技动效。
   ============================================================ */

:root{
  --bh-ink:#1b2433;          /* 主文字 深蓝黑 */
  --bh-ink-2:#46506a;        /* 次文字 */
  --bh-brand:#14315e;        /* 品牌深蓝 */
  --bh-brand-2:#1f4a86;
  --bh-line:#e3e7ef;         /* 分隔线 */
  --bh-bg:#ffffff;
  --bh-bg-soft:#f5f7fb;
  --bh-gold:#b8893b;         /* 克制金，仅用于主按钮 */
  --bh-gold-ink:#7a5a1f;
  --bh-danger:#b3261e;
  --bh-radius:10px;
  --bh-maxw:1180px;
}

/* 基础排版 */
body{color:var(--bh-ink);background:var(--bh-bg);
  font-family:-apple-system,"PingFang SC","Microsoft YaHei",system-ui,sans-serif;
  line-height:1.7;}
h1,h2,h3{color:var(--bh-ink);font-weight:700;line-height:1.3;}
a{color:var(--bh-brand-2);}
img{max-width:100%;height:auto;}

/* 容器 */
.bh-wrap{max-width:var(--bh-maxw);margin:0 auto;padding:0 20px;}

/* 按钮：统一、明确动作、最小 44px 触摸 */
.bh-btn{display:inline-flex;align-items:center;justify-content:center;
  min-height:44px;padding:0 22px;border-radius:var(--bh-radius);
  font-size:16px;font-weight:600;border:1px solid transparent;cursor:pointer;
  text-decoration:none;transition:background .15s ease,transform .05s ease;}
.bh-btn:active{transform:translateY(1px);}
.bh-btn--gold{background:var(--bh-gold);color:#fff;}
.bh-btn--gold:hover{background:var(--bh-gold-ink);}
.bh-btn--ghost{background:#fff;color:var(--bh-brand);border-color:var(--bh-brand);}
.bh-btn--block{width:100%;}
.bh-btn--tel{background:var(--bh-brand);color:#fff;}
.bh-btn--tel:hover{background:var(--bh-brand-2);}

/* 卡片 */
.bh-card{background:#fff;border:1px solid var(--bh-line);border-radius:var(--bh-radius);
  padding:22px;box-shadow:0 1px 2px rgba(20,49,94,.04);}

/* 表单字段：可见 label、错误靠近字段 */
.bh-field{display:block;margin:0 0 14px;font-weight:600;color:var(--bh-ink);}
.bh-field .req{color:var(--bh-danger);}
.bh-field input,.bh-field select,.bh-field textarea{
  width:100%;padding:11px 12px;border:1px solid var(--bh-line);border-radius:8px;
  margin-top:6px;font-size:15px;font-weight:400;color:var(--bh-ink);background:#fff;}
.bh-field input:focus,.bh-field select:focus,.bh-field textarea:focus{
  outline:3px solid rgba(31,74,134,.35);border-color:var(--bh-brand-2);}
.bh-check{display:flex;gap:8px;align-items:flex-start;margin:10px 0;font-weight:400;}
.bh-notice{font-size:13px;color:var(--bh-ink-2);background:var(--bh-bg-soft);
  border-left:3px solid var(--bh-gold);padding:8px 12px;margin:6px 0 0;border-radius:6px;}
.bh-foot{font-size:13px;color:var(--bh-ink-2);margin-top:12px;}
.bh-appoint-msg{padding:12px 14px;border-radius:8px;background:#eef5ee;
  border:1px solid #cfe3cf;color:#1d4d24;font-weight:600;}

/* 移动端固定电话条：不遮挡内容，安全区适配 */
.bh-mobile-call{position:fixed;left:0;right:0;bottom:0;z-index:60;
  display:none;background:var(--bh-brand);color:#fff;
  padding:10px 14px calc(10px + env(safe-area-inset-bottom));
  align-items:center;justify-content:space-between;
  box-shadow:0 -2px 10px rgba(0,0,0,.15);}
.bh-mobile-call a{color:#fff;font-weight:700;text-decoration:none;}
.bh-mobile-call .bh-btn{min-height:40px;padding:0 18px;}

/* 焦点可见（键盘可达） */
a:focus,button:focus,input:focus,select:focus,textarea:focus,[tabindex]:focus{
  outline:3px solid rgba(31,74,134,.45);outline-offset:2px;}

/* 对比度与可读性：避免仅靠颜色传达信息，错误同时用文字 */
.bh-field input:invalid:not(:placeholder-shown){border-color:var(--bh-danger);}

/* 减少动态效果 */
@media (prefers-reduced-motion: reduce){
  *{animation:none!important;transition:none!important;scroll-behavior:auto!important;}
}

/* ---------- 响应式：375 / 390 / 768 / 1024 / 1440 ---------- */
@media (max-width:768px){
  .bh-mobile-call{display:flex;}
  .bh-wrap{padding:0 16px;}
  h1{font-size:26px;}
  h2{font-size:21px;}
  /* 单列卡片，杜绝横向滚动 */
  .bh-grid{display:grid;grid-template-columns:1fr!important;gap:14px;}
  .bh-col-2,.bh-col-3,.bh-col-4{grid-template-columns:1fr!important;}
  /* 触控目标不小于 44px */
  .bh-nav a,.bh-pill{min-height:44px;display:inline-flex;align-items:center;}
  /* 防止按钮溢出 */
  .bh-actions{flex-direction:column;gap:10px;}
  .bh-actions .bh-btn{width:100%;}
}
@media (min-width:769px) and (max-width:1024px){
  .bh-grid{grid-template-columns:repeat(2,1fr);}
}
@media (min-width:1025px){
  .bh-grid{grid-template-columns:repeat(3,1fr);gap:18px;}
}
@media (min-width:1440px){
  :root{--bh-maxw:1240px;}
}

/* ============================================================
   平台化补充样式（在商言法 法律知识与服务平台）
   白底 + 深墨 + 克制金/铜；无紫渐变、无光斑、无炫技动效
   ============================================================ */

/* 按钮：品牌深蓝 */
.btn-brand{background:var(--brand,#17324d);color:#fff;border:0;border-radius:4px;
  padding:8px 18px;font-size:14px;font-weight:500;display:inline-block;text-decoration:none;
  transition:background .2s, transform .15s, box-shadow .2s;}
.btn-brand:hover{background:var(--brand-deep,#0d2236);color:#fff;transform:translateY(-1px);
  box-shadow:0 6px 14px -6px rgba(23,50,77,.5);}
.tag-brand{background:var(--accent-soft,#f2e7d6);color:#8a5a23;}

/* 顶部 utility 条：白底细线 */
.zy-util{background:#fff;border-bottom:1px solid var(--zy-border,#d9dee5);font-size:12px;color:#64748b;}
.zy-util-inner{display:flex;justify-content:space-between;align-items:center;padding:6px 16px;flex-wrap:wrap;gap:8px;}
.zy-util-badges{display:flex;gap:16px;list-style:none;margin:0;padding:0;flex-wrap:wrap;}
.zy-util-badges li{display:flex;align-items:center;gap:4px;}
.zy-util-user{list-style:none;margin:0;padding:0;display:flex;gap:14px;}
.zy-util-user a{color:#64748b;}

/* 品牌条：白底 */
.zy-brand{background:#fff;border-bottom:1px solid var(--zy-border,#d9dee5);}
.zy-brand-inner{display:flex;align-items:center;gap:18px;padding:12px 16px;flex-wrap:wrap;}
.zy-brand-logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:inherit;}
.zy-brand-mark{background:var(--brand,#17324d);color:#fff;font-weight:700;font-size:13px;
  line-height:1.05;padding:6px 5px;border-radius:4px;text-align:center;letter-spacing:1px;}
.zy-brand-text strong{display:block;font-size:19px;color:var(--brand,#17324d);}
.zy-brand-text em{display:block;font-style:normal;font-size:12px;color:#94a3b8;}
.zy-brand-text small{display:block;font-size:12px;color:#64748b;}
.zy-brand-search{display:flex;align-items:center;gap:6px;margin-left:auto;flex:1 1 240px;max-width:420px;}
.zy-brand-search select,.zy-brand-search input{flex:1;padding:8px 10px;border:1px solid var(--zy-border,#d9dee5);
  border-radius:6px;font-size:13px;}
.zy-brand-search button{background:var(--brand,#17324d);color:#fff;border:0;padding:8px 14px;border-radius:6px;cursor:pointer;}
.zy-brand-cta{display:flex;align-items:center;gap:12px;}
.zy-cta-phone{text-decoration:none;color:inherit;text-align:right;}
.zy-cta-phone-num{display:block;font-size:18px;font-weight:700;color:var(--brand,#17324d);}
.zy-cta-phone small{display:block;font-size:11px;color:#64748b;}

/* 主导航：白底 */
.zy-nav{background:var(--brand,#17324d);}
.zy-nav-inner{display:flex;align-items:center;gap:4px;padding:0 16px;flex-wrap:wrap;}
.zy-nav-list{display:flex;align-items:center;gap:2px;list-style:none;margin:0;padding:0;flex-wrap:wrap;}
.zy-nav-home a,.zy-nav-item>a{display:flex;align-items:center;gap:4px;padding:12px 14px;color:#e8eef5;text-decoration:none;font-size:14px;}
.zy-nav-home a:hover,.zy-nav-item>a:hover{background:rgba(255,255,255,.08);color:#fff;}
.zy-nav-item{position:relative;}
.zy-nav-sub{display:none;position:absolute;top:100%;left:0;background:#fff;min-width:180px;
  box-shadow:0 10px 30px -12px rgba(15,23,42,.3);border-radius:6px;overflow:hidden;z-index:50;}
.zy-nav-item:hover .zy-nav-sub{display:block;}
.zy-nav-sub li a{display:block;padding:10px 14px;color:#17212b;text-decoration:none;font-size:13px;}
.zy-nav-sub li a:hover{background:var(--paper-soft,#f6f7f9);color:var(--brand,#17324d);}
.zy-nav-cta{margin-left:auto;}
.zy-nav-cta-btn{background:var(--accent,#b4864b);color:#fff;padding:9px 16px;border-radius:6px;text-decoration:none;font-size:14px;font-weight:600;}
.zy-nav-cta-btn:hover{background:#9a6f39;color:#fff;}
.zy-arrow{font-size:10px;opacity:.7;}

/* 左侧悬浮栏：白底卡片 */
.zy-floatbar{position:fixed;left:14px;top:50%;transform:translateY(-50%);z-index:55;
  display:flex;flex-direction:column;gap:8px;}
.zy-fb-item{width:48px;height:48px;background:#fff;border:1px solid var(--zy-border,#d9dee5);
  border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;
  text-decoration:none;color:var(--brand,#17324d);font-size:10px;box-shadow:var(--shadow-soft);}
.zy-fb-item span:first-child{font-size:18px;}

/* 主体 Hero：白底平台版 */
.zy-hero-platform{background:linear-gradient(180deg,#fbfaf7 0%,#ffffff 100%);padding:48px 0 36px;}
.zy-hero-grid{max-width:1240px;}
.zy-hero-main{display:grid;grid-template-columns:1.5fr 1fr;gap:28px;align-items:start;}
.zy-hero-tag{display:inline-block;background:var(--accent-soft,#f2e7d6);color:#8a5a23;
  padding:4px 12px;border-radius:999px;font-size:13px;font-weight:600;}
.zy-hero-platform h1{font-size:38px;line-height:1.25;color:var(--brand,#17324d);margin:14px 0 12px;}
.zy-hero-platform p{font-size:15px;color:#344454;max-width:640px;}
.zy-hero-actions{display:flex;gap:12px;margin:18px 0;flex-wrap:wrap;}
.zy-hero-urgent{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13px;color:#64748b;}
.zy-urgent-label{background:#17212b;color:#fff;padding:2px 8px;border-radius:4px;font-size:12px;}
.zy-hero-urgent a{color:var(--brand,#17324d);text-decoration:none;border:1px solid var(--zy-border,#d9dee5);padding:3px 10px;border-radius:999px;}
.zy-hero-side{background:#fff;border:1px solid var(--zy-border,#d9dee5);border-radius:10px;padding:18px;box-shadow:var(--shadow-soft);}
.zy-hero-side h3{font-size:16px;color:var(--brand,#17324d);margin:0 0 10px;}
.zy-hero-notice{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;}
.zy-hero-notice li{font-size:13px;color:#344454;display:flex;gap:8px;align-items:flex-start;}
.zy-hero-note{font-size:12px;color:#64748b;background:var(--paper-soft,#f6f7f9);border-left:3px solid var(--accent,#b4864b);
  padding:8px 12px;border-radius:6px;margin:12px 0 0;}

/* 平台三大能力（Bento，仅功能卡，不装饰） */
.zy-pillars{padding:36px 0;}
.zy-pillar-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.zy-pillar{display:block;text-decoration:none;color:inherit;background:#fff;border:1px solid var(--zy-border,#d9dee5);
  border-radius:12px;padding:24px;box-shadow:var(--shadow-soft);transition:transform .18s, border-color .18s;}
.zy-pillar:hover{transform:translateY(-3px);border-color:var(--brand,#17324d);}
.zy-pillar-ico{font-size:28px;}
.zy-pillar h3{font-size:18px;color:var(--brand,#17324d);margin:10px 0 6px;}
.zy-pillar p{font-size:13px;color:#344454;margin:0 0 10px;}
.zy-pillar-go{font-size:12px;color:var(--accent,#b4864b);font-weight:600;}

/* 入驻律师介绍 */
.zy-lawyer-intro{background:var(--paper-soft,#f6f7f9);padding:36px 0;}
.zy-lawyer-intro-inner{display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center;
  background:#fff;border:1px solid var(--zy-border,#d9dee5);border-radius:12px;padding:24px;box-shadow:var(--shadow-soft);}
.zy-li-avatar{width:72px;height:72px;border-radius:50%;background:var(--brand,#17324d);color:#fff;
  display:flex;align-items:center;justify-content:center;font-size:30px;font-weight:700;}
.zy-li-badge{display:inline-block;background:var(--accent-soft,#f2e7d6);color:#8a5a23;font-size:12px;
  font-weight:600;padding:2px 10px;border-radius:999px;vertical-align:middle;margin-left:8px;}
.zy-li-sub{color:#64748b;font-size:13px;margin:4px 0 8px;}
.zy-li-bio{font-size:14px;color:#344454;}
.zy-li-cta{display:flex;flex-direction:column;gap:10px;}

/* 页脚：白底 + 主体声明 */
.zy-footer{background:#fff;color:#344454;border-top:3px solid var(--brand,#17324d);padding:36px 0 0;}
.zy-footer-grid{display:grid;grid-template-columns:repeat(5,1fr) 1.1fr;gap:22px;}
.zy-footer-col h4{font-size:14px;color:var(--brand,#17324d);margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid var(--zy-border,#d9dee5);}
.zy-footer-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;}
.zy-footer-col ul a{color:#344454;text-decoration:none;font-size:13px;}
.zy-footer-col ul a:hover{color:var(--brand,#17324d);}
.zy-footer-logo{font-size:18px;color:var(--brand,#17324d);}
.zy-footer-motto{font-size:13px;color:#64748b;line-height:1.6;}
.zy-footer-op{font-size:13px;color:var(--accent,#b4864b);font-weight:600;margin-top:8px;}
.zy-footer-qr p{font-size:13px;margin:0 0 6px;}
.zy-footer-phone strong{font-size:16px;color:var(--brand,#17324d);}
.zy-footer-subject{margin:26px 0 0;background:var(--paper-soft,#f6f7f9);border:1px solid var(--zy-border,#d9dee5);
  border-radius:8px;padding:14px 16px;}
.zy-footer-subject p{font-size:12.5px;color:#64748b;line-height:1.7;margin:0;}
.zy-footer-bottom{margin-top:18px;border-top:1px solid var(--zy-border,#d9dee5);padding:14px 0;
  font-size:12px;color:#94a3b8;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;}
.zy-footer-legal a{color:#64748b;}

@media (max-width:1024px){
  .zy-hero-main{grid-template-columns:1fr;}
  .zy-footer-grid{grid-template-columns:repeat(2,1fr);}
  .zy-pillar-grid{grid-template-columns:1fr;}
  .zy-lawyer-intro-inner{grid-template-columns:1fr;text-align:center;}
  .zy-li-cta{flex-direction:row;justify-content:center;}
}
@media (max-width:768px){
  .zy-brand-search{display:none;}
  .zy-hero-platform h1{font-size:28px;}
  .zy-floatbar{display:none;}
  .zy-nav-inner{gap:0;}
  .zy-nav-list{width:100%;}
  .zy-nav-home a,.zy-nav-item>a{padding:10px 10px;font-size:13px;}
  .zy-footer-grid{grid-template-columns:1fr;}
  .zy-footer-bottom{flex-direction:column;}
}
