/**
 * 首页专属样式（v6 · zhihuilu.com 设计系统 1:1 移植版）
 * 作用域：.jnm-home（首页内容外层包裹，与 zhihuilu 的 .zhihuilu-block-content 同构）
 * 来源：zhihuilu-child/assets/css/blocks.css 的首页组件参数逐条照抄，
 *       仅把品牌强调色换成节能猫蓝 #1c5fd6（红色只保留给紧急报修）。
 * v5 修正：① hero overflow:visible + z-index（修复下拉面板被下一屏挡住）
 *          ② svc-card__action 左右 18px 内边距（修复"查看详情"贴边）
 *          ③ jnm-dyn-head 自带 84px 顶边距（修复 04 以下顶部过挤）
 *          ④ query 块全宽、限宽移交 .jnm-dyn-grid（修复 05 灰底不满屏平铺）
 *          ⑤ 卡片等高（read-more 推底）+ 移动端节奏同步
 * v6 修正（v1.12.0）：⑥ entry-content 相邻块 margin 清零 + flow-root（消灭 16/28px 白色缝隙）
 *          ⑦ more-wrap 全宽（05 灰底带全程满屏）
 *          ⑧ 05 卡片与按钮透明化（整块灰底平铺不割裂）
 *          ⑨ 动态网格 auto-fit（案例只有 2 条时均分整行，不留空列显"偏左"）
 */

/* ========== 0. 解除 GeneratePress 容器挤压 ========== */
body.page-home .site.grid-container{max-width:100%;padding-left:0;padding-right:0;}
body.page-home .site-content{margin:0;}
body.page-home .content-area{width:100%;max-width:100%;}
body.page-home .site-main{padding:0;margin:0;}
body.page-home .inside-article{
  padding:0;margin:0;max-width:100%;
  background:transparent;border-radius:0;box-shadow:none;border:0;
}
body.page-home .entry-content{margin:0;padding:0;}
/* 首页标题一律不带内容页的左侧竖条 */
body.page-home .entry-content h2,
body.page-home .entry-content h3{border-left:none;padding-left:0;}
body.page-home .entry-meta,
body.page-home .page-header{display:none;}

/* ========== 1. 设计变量（zhihuilu 参数 · 节能猫蓝） ========== */
.jnm-home{
  --content: 1240px;
  --radius: 8px;
  --surface: #ffffff;
  --surface-soft: #f2f6fc;
  --bg-deep: #eef5ff;
  --ink: #3c5068;
  --ink-strong: #16324f;
  --muted: #5b6b80;
  --line: #dfe9f6;
  --line-strong: #c7d6eb;
  --accent: #1c5fd6;        /* 主品牌蓝（zhihuilu 的 accent 位） */
  --accent-dark: #1349a8;
  --accent-soft: #eaf3ff;
  --accent-faint: #f2f7ff;
  --signal: #c8102e;        /* 紧急报修信号红（zhihuilu 的 accent-2 位） */
  --signal-dark: #a70d26;
  --signal-soft: #fdecec;
  --accent-3: #35b6e8;
  --shadow-sm: 0 1px 2px rgba(22, 50, 79, 0.06);
  --shadow-md: 0 14px 34px rgba(22, 50, 79, 0.1);
  --shadow-lg: 0 26px 70px rgba(22, 50, 79, 0.14);
  color: var(--ink);
  background: var(--surface);
  font-size: 16px;
}
.jnm-home h1,.jnm-home h2,.jnm-home h3{color:var(--ink-strong);}
.jnm-home a{color:var(--accent);}
.jnm-home a:hover{color:var(--accent-dark);}

/* ========== 2. 布局原语（照抄） ========== */
.jnm-home .container{width:min(var(--content), calc(100% - 40px));margin:0 auto;}
.jnm-home .section{padding:84px 0;}
.jnm-home .band{background:var(--surface-soft);border-block:1px solid var(--line);}
.jnm-home .band-tint{background:linear-gradient(180deg, var(--accent-faint), var(--bg-deep));}
.jnm-home .section-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:28px;}
.jnm-home .section-heading h2{margin:0;font-size:1.9rem;font-weight:800;line-height:1.25;}
.jnm-home .section-heading p{max-width:66ch;margin:10px 0 0;color:var(--muted);}
.jnm-home .home-stage{display:inline-flex;align-items:center;min-height:24px;margin:0 0 8px;color:var(--muted);font-size:0.86rem;font-weight:800;letter-spacing:0;}
.jnm-home .home-stage::before{content:"";width:18px;height:3px;margin-right:9px;border-radius:999px;background:var(--accent);}

/* ========== 3. 按钮体系（照抄） ========== */
.jnm-home .button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;border:1px solid var(--accent);border-radius:var(--radius);padding:9px 18px;background:var(--accent);color:#fff !important;font-weight:700;text-decoration:none;transition:background 160ms ease, border-color 160ms ease, transform 160ms ease;}
.jnm-home .button:hover{background:var(--accent-dark);border-color:var(--accent-dark);color:#fff !important;text-decoration:none;transform:translateY(-1px);}
.jnm-home .button:active,.jnm-home .text-button:active{transform:scale(0.985);}
.jnm-home .button.secondary{border-color:var(--line-strong);background:var(--surface);color:var(--ink-strong) !important;}
.jnm-home .button.secondary:hover{border-color:var(--accent);background:var(--accent-faint);color:var(--accent-dark) !important;}
.jnm-home .button.signal{border-color:var(--signal);background:var(--signal);color:#fff !important;}
.jnm-home .button.signal:hover{background:var(--signal-dark);border-color:var(--signal-dark);}
.jnm-home .button.small,.jnm-home .text-button.small{min-height:38px;padding:6px 13px;font-size:0.92rem;}
.jnm-home .button.large{min-height:52px;padding:11px 22px;}
.jnm-home .text-button{display:inline-flex;align-items:center;gap:7px;min-height:44px;border:1px solid var(--line-strong);border-radius:var(--radius);padding:8px 15px;background:var(--surface);color:var(--ink-strong) !important;font-weight:650;text-decoration:none;transition:border-color 160ms ease, background 160ms ease, transform 160ms ease;white-space:nowrap;}
.jnm-home .text-button:hover{border-color:var(--accent);background:var(--accent-faint);text-decoration:none;transform:translateY(-1px);}
.jnm-home .icon{width:18px;height:18px;flex:none;}
/* SVG 默认尺寸兜底：内联 svg 不带 width/height 时按 300x150 渲染（卡片"箭头超大"的根因） */
.jnm-home svg{width:16px;height:16px;flex:none;}
.jnm-home .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.jnm-home .text-button svg,.jnm-home .button svg{width:16px;height:16px;}

/* ========== 4. Hero（浅蓝网格底 · 索引框居中，照抄 zhihuilu） ========== */
/* overflow:visible + z-index：下拉面板要能盖住下一屏，绝不能裁切 */
.jnm-home .hero{
  position:relative;overflow:visible;z-index:20;min-height:0;
  padding:clamp(78px, 10vh, 128px) 0 clamp(58px, 8vh, 88px);
  background-color:#eef5ff;
  background-image:
    linear-gradient(rgba(28, 95, 214, 0.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(28, 95, 214, 0.045) 1px, transparent 1px),
    linear-gradient(180deg, #eaf3ff 0%, #fbfcfe 56%, #f8fbff 100%);
  background-size:44px 44px, 44px 44px, auto;
  background-repeat:repeat, repeat, no-repeat;
  background-position:center, center, center;
}
.jnm-home .hero-shell{position:relative;display:block;width:min(1120px, calc(100% - 40px));margin:0 auto;text-align:center;}
.jnm-home .hero-copy{display:flex;flex-direction:column;align-items:center;}
.jnm-home .hero-kicker{display:inline-flex;align-items:center;gap:10px;margin-bottom:20px;color:var(--accent);font-size:0.8rem;font-weight:800;letter-spacing:0.08em;text-transform:uppercase;}
.jnm-home .hero-kicker::before,
.jnm-home .hero-kicker::after{content:"";width:34px;height:2px;border-radius:999px;background:linear-gradient(90deg, var(--accent), var(--accent-3));}
.jnm-home .hero h1{max-width:17ch;margin:0 0 18px;color:var(--ink-strong);font-size:4rem;font-weight:780;line-height:1.1;text-wrap:balance;}
.jnm-home .hero-copy .lead{max-width:680px;margin:0 auto 38px;color:var(--muted);font-size:1.18rem;line-height:1.7;}
.jnm-home .hero-index-wrap{position:relative;width:min(820px, 100%);margin:0 auto;}
.jnm-home .ai-console{width:100%;margin:0;border:0;border-radius:20px;padding:0 0 16px;background:rgba(28, 95, 214, 0.065);box-shadow:none;text-align:left;}
.jnm-home .search-form{display:block;min-height:150px;margin:0;padding:14px 14px 10px;border:1.2px solid rgba(20, 22, 24, 0.1);border-radius:18px;background:#fff;box-shadow:0 18px 52px rgba(28, 95, 214, 0.12);text-align:left;}
.jnm-home .search-form:focus-within{border-color:var(--accent);box-shadow:0 18px 52px rgba(28, 95, 214, 0.18);}
.jnm-home .search-input{display:block;width:100%;min-height:74px;max-height:190px;margin:0;padding:8px 4px 4px;border:0;border-radius:10px;background:transparent;color:var(--ink-strong);font-size:1.2rem;line-height:1.55;font-family:inherit;outline:0;resize:none;}
.jnm-home .search-input::placeholder{color:rgba(91, 107, 128, 0.72);}
.jnm-home .search-input:focus,.jnm-home .search-input:focus-visible{outline:0;box-shadow:none;}
.jnm-home .search-actions{display:flex;align-items:center;justify-content:flex-end;gap:14px;margin-top:12px;}
.jnm-home .search-submit{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;min-width:52px;min-height:52px;margin:0;border:1px solid var(--accent);border-radius:14px;padding:0;background:var(--accent);color:#fff;font-weight:750;cursor:pointer;box-shadow:0 10px 24px rgba(28, 95, 214, 0.16);transition:background 160ms ease, transform 160ms ease;}
.jnm-home .search-submit:hover{background:var(--accent-dark);border-color:var(--accent-dark);transform:translateY(-1px);}
.jnm-home .search-submit svg{width:22px;height:22px;}
/* 索引框下方快捷导航（zhihuilu #hero-quick-nav 完整移植：胶囊触发器 + 悬停下拉面板） */
.jnm-home #hero-quick-nav{position:relative;display:block;width:min(820px, 100%);margin:22px auto 0;padding:0;text-align:center;}
.jnm-home #hero-quick-nav .quick-nav-triggers{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px;}
.jnm-home #hero-quick-nav .hero-nav-trigger{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:0;min-height:46px;border:1px solid rgba(28, 95, 214, 0.18);border-radius:999px;padding:8px 18px;background:rgba(255, 255, 255, 0.86);color:var(--ink-strong) !important;font-size:0.96rem;font-weight:700;line-height:1.2;white-space:nowrap;cursor:pointer;text-decoration:none;box-shadow:0 8px 22px rgba(22, 50, 79, 0.05);transition:all 160ms ease;}
.jnm-home #hero-quick-nav .hero-nav-trigger:hover,
.jnm-home #hero-quick-nav .hero-nav-trigger.is-open{background:#fff;border-color:var(--accent);color:var(--accent) !important;text-decoration:none;transform:translateY(-1px);}
.jnm-home #hero-quick-nav .nav-hint{display:inline-flex;align-items:center;justify-content:center;width:15px;height:15px;margin-left:2px;color:var(--accent);}
.jnm-home #hero-quick-nav .nav-chevron{width:13px;height:13px;transition:transform 160ms ease;}
.jnm-home #hero-quick-nav .hero-nav-trigger:hover .nav-chevron,
.jnm-home #hero-quick-nav .hero-nav-trigger.is-open .nav-chevron{transform:rotate(180deg);}
.jnm-home #hero-quick-nav .quick-nav-panel{position:absolute;top:calc(100% + 12px);left:50%;z-index:90;display:none;width:min(620px, calc(100vw - 24px));padding:10px;border:1px solid rgba(28, 95, 214, 0.14);border-radius:16px;background:rgba(255, 255, 255, 0.995);box-shadow:0 24px 60px rgba(22, 50, 79, 0.16);text-align:left;transform:translateX(-50%);}
.jnm-home #hero-quick-nav .quick-nav-panel.is-open{display:block;}
.jnm-home #hero-quick-nav .quick-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:2px 4px 8px;color:var(--ink-strong);font-size:0.84rem;}
.jnm-home #hero-quick-nav .quick-panel-head a{display:inline-flex;align-items:center;gap:5px;min-height:28px;border-radius:8px;padding:2px 8px;background:var(--accent-soft);color:var(--accent-dark) !important;font-size:0.76rem;font-weight:800;white-space:nowrap;}
.jnm-home #hero-quick-nav .quick-panel-head a:hover{background:#dcecff;text-decoration:none;}
.jnm-home #hero-quick-nav .quick-panel-head svg,
.jnm-home #hero-quick-nav .quick-nav-more svg{width:13px;height:13px;}
.jnm-home #hero-quick-nav .quick-nav-article{display:grid;grid-template-columns:auto minmax(0, 1fr);align-items:center;gap:10px;min-height:42px;margin:0 0 2px;border-radius:9px;padding:6px 9px;color:var(--ink-strong) !important;}
.jnm-home #hero-quick-nav .quick-nav-article:hover{background:var(--accent-soft);text-decoration:none;}
.jnm-home #hero-quick-nav .quick-nav-article span{width:52px;border-radius:999px;padding:2px 0;background:var(--accent-soft);color:var(--accent-dark);font-size:0.68rem;font-weight:800;text-align:center;white-space:nowrap;}
.jnm-home #hero-quick-nav .quick-nav-article strong{display:block;overflow:hidden;font-size:0.86rem;font-weight:700;line-height:1.35;text-overflow:ellipsis;white-space:nowrap;}
.jnm-home #hero-quick-nav .quick-nav-more{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:36px;margin:4px 0 0;border-top:1px solid rgba(28, 95, 214, 0.1);padding:7px 10px 2px;color:var(--accent-dark) !important;font-size:0.82rem;font-weight:800;}
.jnm-home #hero-quick-nav .quick-nav-more:hover{color:var(--accent) !important;text-decoration:none;}
.jnm-home .hero-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin:28px 0 0;}
.jnm-home .hero-actions .button{min-height:50px;padding:11px 22px;border-radius:10px;font-size:1rem;}
.jnm-home .hero-actions .button:first-child{border-color:var(--accent);background:var(--accent);box-shadow:0 12px 30px rgba(28, 95, 214, 0.18);}
.jnm-home .hero-actions .button:first-child:hover{background:var(--accent-dark);border-color:var(--accent-dark);}
.jnm-home .hero-actions .button.secondary{border-color:rgba(28, 95, 214, 0.38);background:#fff;color:var(--accent-dark) !important;}
.jnm-home .hero-actions .button.secondary:hover{border-color:var(--accent-dark);background:var(--accent-soft);color:var(--accent-dark) !important;}
.jnm-home .hero-note{display:inline-flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;max-width:min(720px, 100%);margin:18px auto 0;padding:8px 14px;border:1px solid rgba(28, 95, 214, 0.12);border-radius:999px;background:rgba(255, 255, 255, 0.72);color:var(--muted);font-size:0.84rem;}
.jnm-home .hero-note strong{color:var(--accent-dark);font-weight:800;}

/* ========== 5. 问题直达卡（zhihuilu home-problem-card） ========== */
.jnm-home .home-problem-grid{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:18px;}
.jnm-home .home-problem-card{display:flex;flex-direction:column;gap:10px;border:1px solid var(--line);border-radius:var(--radius);padding:24px 22px;background:var(--surface);box-shadow:var(--shadow-sm);text-decoration:none;transition:border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;}
.jnm-home .home-problem-card:hover,
.jnm-home .home-problem-card:focus-visible{border-color:var(--accent);box-shadow:var(--shadow-md);transform:translateY(-3px);text-decoration:none;}
.jnm-home .home-problem-index{color:var(--accent);font-size:0.92rem;font-weight:800;}
.jnm-home .home-problem-card h3{margin:0;color:var(--ink-strong);font-size:1.16rem;}
.jnm-home .home-problem-card p{margin:0;color:var(--muted);font-size:0.95rem;line-height:1.6;}
.jnm-home .home-problem-link{display:inline-flex;align-items:center;gap:7px;margin-top:auto;padding-top:12px;color:var(--accent-dark);font-size:0.92rem;font-weight:700;}
.jnm-home .home-problem-card:hover .home-problem-link{color:var(--accent);}

/* ========== 6. 六大业务卡（zhihuilu topic-marquee-card 规格改为静态栅格） ========== */
.jnm-home .svc-grid{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:18px;}
.jnm-home .svc-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink-strong);box-shadow:var(--shadow-sm);text-decoration:none;transition:border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;}
.jnm-home .svc-card:hover{border-color:var(--line-strong);box-shadow:var(--shadow-md);text-decoration:none;transform:translateY(-3px);}
.jnm-home .svc-card__media{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background:var(--accent-soft);}
.jnm-home .svc-card__media img{width:100%;height:100%;object-fit:cover;transition:transform 320ms ease;}
.jnm-home .svc-card:hover .svc-card__media img{transform:scale(1.035);}
.jnm-home .svc-card__count{position:absolute;right:12px;bottom:12px;display:inline-flex;align-items:center;min-height:28px;border-radius:999px;padding:4px 10px;background:rgba(16, 17, 20, 0.82);color:#fff;font-size:0.76rem;font-weight:750;backdrop-filter:blur(6px);}
.jnm-home .svc-card__copy{display:grid;flex:1;align-content:space-between;gap:10px;padding:18px;}
.jnm-home .svc-card__copy > strong{font-size:1.18rem;line-height:1.3;color:var(--ink-strong);}
.jnm-home .svc-card__copy > ul{margin:0;padding-left:18px;color:var(--muted);font-size:0.9rem;line-height:1.7;}
.jnm-home .svc-card__action{display:inline-flex;align-items:center;justify-content:space-between;width:100%;min-height:34px;border-top:1px solid var(--line);padding:10px 18px;color:var(--ink);font-size:0.9rem;font-weight:800;}
.jnm-home .svc-card:hover .svc-card__action{color:var(--accent);}

/* ========== 7. 动态内容区（案例/方案/知识 · 同卡片语言） ========== */
/* 区块节奏：head 自带 84px 顶边距；flow-root 防止 heading 外边距塌陷穿出形成白色缝隙；
   entry-content 的 WP 流式布局会给相邻块加 margin，全部清零（间距全部由块内 padding 提供） */
body.page-home .entry-content > *{margin-top:0;margin-bottom:0;}
.jnm-dyn-head{display:flow-root;padding:84px 0 0;}
.jnm-dyn-head .section-heading{width:min(var(--content), calc(100% - 40px));margin:0 auto;padding-bottom:28px;}
.jnm-dyn-head .section-heading h2{margin:0;font-size:1.9rem;font-weight:800;line-height:1.25;}
.jnm-dyn-head .section-heading p{max-width:66ch;margin:10px 0 0;color:var(--muted);}
/* query 与 more-wrap 全宽（带背景色的板块才能满屏平铺），限宽交给内部 .jnm-dyn-grid */
.wp-block-query.jnm-dyn-q{width:100%;max-width:none;margin:0;padding:0;}
.jnm-dyn__more-wrap{width:100%;margin:0 auto;padding:36px 0 44px;text-align:center;}
.jnm-dyn--cases{background:var(--surface);}
.jnm-dyn--solutions{background:var(--surface-soft);}
.jnm-dyn--solutions.jnm-dyn-head{border-top:1px solid var(--line);}
/* 05 整段连续灰底：卡片与按钮去白底，整块背景平铺不割裂
   （线上 query/more-wrap 的 jnm-home 与 jnm-dyn--solutions 在同一元素上，必须用复合选择器） */
.wp-block-query.jnm-dyn--solutions .jnm-dyn-grid > li{background:transparent;}
.wp-block-query.jnm-dyn--solutions .jnm-dyn-grid > li:hover{background:var(--surface);}
.jnm-dyn--solutions.jnm-dyn__more-wrap{border-bottom:1px solid var(--line);padding-bottom:44px;}
.jnm-dyn--solutions.jnm-dyn__more-wrap .button.secondary{border-color:var(--line-strong);background:transparent;}
.jnm-dyn--solutions.jnm-dyn__more-wrap .button.secondary:hover{border-color:var(--accent);background:var(--surface);color:var(--accent-dark) !important;}

/* auto-fit：内容不足 3 条时（如案例只有 2 条）自动均分整行，不留空列显"偏左"。
   左右边距必须 !important：GP 父主题 main.css 给 .wp-block-post-template 强设 margin-left:0，
   会把 auto 压成 0 导致整块贴左（实测 offset -20px）。
   padding 必须 !important：style.css 的 body.page .entry-content ul（特异性 0,2,2）压掉这里的
   padding:0，给网格强塞 22px 左内边距，卡片右缘与其他板块不齐（手机端同样命中）。 */
.jnm-home .jnm-dyn-grid{display:grid;width:min(var(--content), calc(100% - 40px));margin-left:auto !important;margin-right:auto !important;grid-template-columns:repeat(auto-fit, minmax(320px, 1fr));gap:24px;list-style:none;padding:0 !important;}
/* 同理归零：entry-content li 的 margin-bottom:6px 会垫高网格卡片底边 */
.jnm-home .jnm-dyn-grid > li{margin-bottom:0;}
/* WP 给 post-template ul 强加 16px 上下 margin，塌陷穿透 query 块形成白色缝隙——强制清零 */
.jnm-dyn-grid.wp-block-post-template{margin-top:0 !important;margin-bottom:0 !important;}
.jnm-home .jnm-dyn-grid > li{position:relative;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm);transition:border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;}
.jnm-home .jnm-dyn-grid > li:hover{border-color:var(--line-strong);box-shadow:var(--shadow-md);transform:translateY(-3px);}
.jnm-home .jnm-dyn-grid .wp-block-post-featured-image{margin:0;aspect-ratio:16/9;overflow:hidden;background:var(--accent-soft);}
.jnm-home .jnm-dyn-grid .wp-block-post-featured-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 320ms ease;}
.jnm-home .jnm-dyn-grid > li:hover .wp-block-post-featured-image img{transform:scale(1.035);}
.jnm-home .jnm-dyn-grid .wp-block-post-title{margin:16px 18px 6px;font-size:1.12rem;line-height:1.4;font-weight:700;}
.jnm-home .jnm-dyn-grid .wp-block-post-title a{color:var(--ink-strong);text-decoration:none;}
.jnm-home .jnm-dyn-grid .wp-block-post-title a:hover{color:var(--accent);}
.jnm-home .jnm-dyn-grid .wp-block-post-excerpt{margin:0 18px 4px;font-size:0.9rem;color:var(--muted);line-height:1.65;}
.jnm-home .jnm-dyn-grid .wp-block-read-more{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:34px;margin:12px 18px 16px;margin-top:auto;border-top:1px solid var(--line);padding-top:10px;font-size:0.9rem;font-weight:800;color:var(--accent) !important;text-decoration:none;}
.jnm-home .jnm-dyn-grid .wp-block-read-more:hover{color:var(--accent-dark) !important;}
/* 无封面图的卡片：顶部蓝色渐变条补位，保持卡片完整感 */
.jnm-home .jnm-dyn-grid > li:not(:has(img))::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg, var(--accent), var(--accent-3));}
.jnm-home .jnm-dyn-grid > li:not(:has(img)) .wp-block-post-title{margin-top:24px;}

/* ========== 8. 服务流程（zhihuilu home-method-flow 规格 · 6 步 3 列） ========== */
.jnm-home .home-method-flow{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:14px;}
.jnm-home .home-method-step{position:relative;display:flex;flex-direction:column;gap:6px;border:1px solid var(--line);border-radius:var(--radius);padding:22px 20px;background:var(--surface);box-shadow:var(--shadow-sm);}
.jnm-home .home-method-step + .home-method-step::before{content:"";position:absolute;top:50%;left:-14px;width:14px;height:1px;background:var(--line-strong);}
/* 每行第一格（1/4）不画连接线 */
.jnm-home .home-method-step:nth-child(3n+1)::before{display:none;}
.jnm-home .home-method-step > span{color:var(--accent);font-size:0.86rem;font-weight:800;}
.jnm-home .home-method-step strong{color:var(--ink-strong);font-size:1.08rem;}
.jnm-home .home-method-step small{color:var(--muted);font-size:0.92rem;line-height:1.6;}

/* ========== 9. 深色 CTA（zhihuilu cta-band） ========== */
.jnm-home .cta-band{
  background:
    radial-gradient(circle at 82% 18%, rgba(255, 255, 255, 0.1), transparent 34%),
    var(--ink-strong);
  color:#fff;
}
.jnm-home .cta-band .section-heading h2{color:#fff;}
.jnm-home .cta-band .section-heading p{color:rgba(255,255,255,0.72);}
.jnm-home .cta-band .home-stage{color:rgba(255,255,255,0.8);}
.jnm-home .cta-band .home-stage::before{background:#fff;}
.jnm-home .cta-band .button{border-color:#fff;background:#fff;color:var(--ink-strong) !important;}
.jnm-home .cta-band .button:hover{background:#eef0f3;border-color:#eef0f3;color:var(--ink-strong) !important;}
.jnm-home .cta-band .button.secondary{border-color:rgba(255, 255, 255, 0.44);background:transparent;color:#fff !important;}
.jnm-home .cta-band .button.secondary:hover{border-color:#fff;background:rgba(255, 255, 255, 0.14);color:#fff !important;}
.jnm-home .cta-tags{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 26px;}
.jnm-home .cta-tags span{border:1px solid rgba(255,255,255,0.32);border-radius:999px;padding:7px 16px;font-size:0.86rem;color:rgba(255,255,255,0.88);}
.jnm-home .cta-band .cta-actions{display:flex;flex-wrap:wrap;gap:12px;}

/* ========== 响应式（zhihuilu 断点照抄） ========== */
@media (max-width:1180px){
  .jnm-home .hero h1{font-size:3.5rem;}
  .jnm-home .hero-shell{width:min(940px, calc(100% - 36px));}
}
@media (max-width:1024px){
  .jnm-home .section{padding:64px 0;}
  .jnm-home .hero-shell{width:min(940px, calc(100% - 36px));}
  .jnm-home .home-problem-grid,.jnm-home .svc-grid{grid-template-columns:repeat(2, minmax(0, 1fr));}
  /* jnm-dyn-grid 用 auto-fit，列数随宽度自适应，无需覆盖 */
  .jnm-home .home-method-flow{grid-template-columns:repeat(2, minmax(0, 1fr));}
  .jnm-home .home-method-step + .home-method-step::before{display:none;}
  .jnm-dyn-head{padding-top:64px;}
}
@media (max-width:900px){
  .jnm-home .hero{padding:78px 0 64px;}
  .jnm-home .hero h1{font-size:3.1rem;}
}
@media (max-width:768px){
  .jnm-home .home-problem-grid,.jnm-home .svc-grid,.jnm-home .jnm-dyn-grid{gap:14px;}
}
@media (max-width:640px){
  .jnm-home .hero{padding:64px 0 50px;}
  .jnm-home .hero h1{max-width:12ch;margin-bottom:14px;font-size:2.35rem;}
  .jnm-home .hero-kicker{font-size:0.68rem;letter-spacing:0.06em;}
  .jnm-home .hero-copy .lead{margin-bottom:30px;font-size:1.02rem;}
  .jnm-home .hero-index-wrap,.jnm-home #hero-quick-nav{width:100%;}
  .jnm-home .ai-console{padding:0 0 14px;border-radius:18px;}
  .jnm-home .search-form{min-height:136px;padding:10px 10px 8px;border-radius:16px;}
  .jnm-home .search-input{min-height:68px;font-size:1.04rem;}
  .jnm-home .search-submit{width:48px;height:48px;min-width:48px;min-height:48px;border-radius:12px;}
  .jnm-home #hero-quick-nav .quick-nav-triggers{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:8px;margin-top:20px;}
  .jnm-home #hero-quick-nav .hero-nav-trigger{min-height:42px;padding:7px 10px;font-size:0.88rem;}
  .jnm-home #hero-quick-nav .quick-nav-panel{top:calc(100% + 8px);max-width:620px;padding:8px;}
  .jnm-home #hero-quick-nav .quick-nav-article strong{white-space:normal;}
  .jnm-home .section{padding:54px 0;}
  .jnm-dyn-head{padding-top:56px;}
  .jnm-dyn__more-wrap{padding-top:22px;}
  .jnm-home .section-heading{align-items:start;flex-direction:column;gap:12px;}
  .jnm-home .home-problem-grid,.jnm-home .svc-grid,.jnm-home .home-method-flow{grid-template-columns:minmax(0, 1fr);}
  .jnm-home .jnm-dyn-grid{grid-template-columns:minmax(0, 1fr);width:calc(100% - 32px);}
  .jnm-home .home-problem-card,.jnm-home .home-method-step{padding:20px;}
  .jnm-dyn-head .section-heading{width:calc(100% - 32px);}
  .jnm-home .cta-band .cta-actions .button{flex:1 1 100%;}
}
@media (max-width:420px){
  .jnm-home .hero-actions{display:grid;grid-template-columns:1fr;width:100%;}
  .jnm-home .hero-actions .button{width:100%;}
}

/* 无障碍：用户偏好减少动效时静止 */
@media (prefers-reduced-motion:reduce){
  .jnm-home .button,.jnm-home .text-button,.jnm-home .home-problem-card,
  .jnm-home .svc-card,.jnm-home .svc-card__media img,
  .jnm-home .jnm-dyn-grid > li,.jnm-home .jnm-dyn-grid .wp-block-post-featured-image img,
  .jnm-home #hero-quick-nav .hero-nav-trigger,.jnm-home .search-submit{transition:none !important;}
}
