/* 页面外壳（统一，无按页名单）
   ① 只保留一层导航：隐藏旧面包屑，统一用布局里的路径导航 .dc-trail
   ② 路径导航样式：两级、15px、靠左、与内容同列 */
.crumbs { display: none !important; }

.dc-trail-wrap { margin: 8px 0 0 !important; }
.dc-trail { display: flex; align-items: center; justify-content: flex-start; gap: 4px; font-size: 15px; font-weight: 700; padding: 4px 0 8px; }
.dc-trail a { color: var(--primary-700, #0a8a63); text-decoration: none; }
.dc-trail a:hover { text-decoration: underline; }
.dc-trail span { color: var(--l2-ink-2, #47585f); }
.dc-trail i { font-size: .68rem; opacity: .5; margin: 0 8px; }

/* 一句话说明（布局统一渲染）：与路径导航同列，一行；配套统一隐藏重复的页内大标题
   —— 是否隐藏由布局在渲染说明行时打的标记 data-chrome="lead" 决定，不按页列举。 */
.dc-lead { font-size: 14px; line-height: 1.6; color: var(--l2-ink-3, #7b8f97); margin: 0 0 12px; max-width: 900px; }
body[data-chrome="lead"] h1 { position: absolute !important; width: 1px !important; height: 1px !important; margin: -1px !important;
  padding: 0 !important; overflow: hidden !important; clip: rect(0 0 0 0) !important; white-space: nowrap !important; border: 0 !important; }
body[data-chrome="lead"] h1 + p { display: none !important; }
/* 统一：有「一句话说明」的页面，隐藏各页自己画的「大标题 + 导语」区块（只隐藏纯文字块，不动搜索/筛选等控件）
   这些是组件类名，不是页面名单 —— 任何页面用到同一个组件就同样处理。 */
body[data-chrome="lead"] .rm-head,
body[data-chrome="lead"] .pk-head,
body[data-chrome="lead"] .lx-head,
body[data-chrome="lead"] .lx-hero-copy,
body[data-chrome="lead"] .hero-copy,
body[data-chrome="lead"] .st-hero-copy,
body[data-chrome="lead"] .tp-head,
body[data-chrome="lead"] .bd-head,
body[data-chrome="lead"] .ex-head { display: none !important; }
/* 框架层样式统一：路径导航（小字标签）+ 一句话说明（正文灰），同一容器、同一左边缘 */
.dc-trail-wrap { margin: 10px 0 0 !important; }
.dc-trail { display: flex; align-items: center; gap: 2px; font-size: 13px; font-weight: 600; line-height: 1.5; padding: 0; color: var(--l2-ink-3, #7b8f97); }
.dc-trail a { color: var(--l2-ink-2, #47585f); text-decoration: none; font-weight: 600; }
.dc-trail a:hover { color: var(--primary-700, #0a8a63); text-decoration: underline; }
.dc-trail span { color: var(--l2-ink, #22343c); font-weight: 700; }
.dc-trail i { font-size: .6rem; opacity: .45; margin: 0 6px; }
.dc-lead { font-size: 14px; line-height: 1.65; color: var(--l2-ink-3, #7b8f97); margin: 4px 0 0; max-width: none; }
/* 框架层（路径导航 + 说明）统一收口：
   ① 与内容同列：把「容器里再套容器」的重复内边距去掉（统一规则，不是页面名单）
   ② 与下方内容留出间距
   ③ 说明行给出明确样式（左侧主色竖条 + 稍大字号 + 深色），不再是一片平灰 */
.dc-trail-wrap { margin: 12px 0 0 !important; padding-bottom: 6px; }
.dc-lead {
  font-size: 15px; line-height: 1.7; color: var(--l2-ink-2, #47585f);
  margin: 6px 0 0; padding: 2px 0 2px 12px; border-left: 3px solid var(--primary, #13c892);
  background: linear-gradient(90deg, rgba(19,200,146,.06), rgba(19,200,146,0));
  border-radius: 0 6px 6px 0;
}
.dc-lead + * { margin-top: 18px; }
/* 说明行限制在可读宽度内（不再横跨整个容器），与正文卡片列左边缘对齐 */
.dc-lead { max-width: 880px; }
.dc-trail-wrap > .container { padding-left: 16px !important; padding-right: 16px !important; }
/* 内容区 <main class="flex-grow-1 container"> 已经自带 16px 内边距；
   各页里面又套了一层 .container → 双层内边距，导致「正文比导航/说明再右移 16px」。
   这里只去掉「main 的直接子级 .container」的内边距（作用域限定，不影响其它嵌套容器）。 */
main.container > .container { padding-left: 0 !important; padding-right: 0 !important; max-width: none !important; }
/* 首页通栏色带收进内容列（用户选定：首页模块宽度与其它页面一致）
   原来的机制是 width:100vw + 负外边距做通栏；这里按用户要求改为收在内容列内（圆角色块）。 */
body[data-page="home"] .hero-modern,
body[data-page="home"] .st-band {
  width: auto !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  border-radius: 16px;
}
body[data-page="home"] .st-band { margin-top: 24px; padding: 28px 0; }
body[data-page="home"] .st-band > .container { padding-left: 0 !important; padding-right: 0 !important; }
/* 首页「热门景区 / 热门城市 / 热门省份」恢复为以图片为主的卡片（用户反馈：现在是难看的列表）
   说明：这些模块与 /cities、/provinces 列表页共用 _lx_card 组件，之前被改成紧凑行；
   这里只对首页做「图片在上、文字在下」的卡片式排版，不影响列表页。 */
body[data-page="home"] .l2-list { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px !important; }
@media (max-width: 1100px) { body[data-page="home"] .l2-list { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 820px)  { body[data-page="home"] .l2-list { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 520px)  { body[data-page="home"] .l2-list { grid-template-columns: 1fr; } }

body[data-page="home"] .l2-row {
  display: block !important; height: auto !important; min-height: 0 !important;
  border: 1px solid var(--l2-line, var(--border)); border-radius: 16px; overflow: hidden;
  background: #fff; transition: transform .18s, box-shadow .18s;
}
body[data-page="home"] .l2-row:hover { transform: translateY(-3px); box-shadow: 0 10px 26px rgba(15,62,74,.12); }
body[data-page="home"] .l2-thumb { display: block !important; width: 100% !important; height: 148px !important; border-radius: 0 !important; overflow: hidden; }
body[data-page="home"] .l2-thumb img { width: 100% !important; height: 148px !important; object-fit: cover; display: block; }
body[data-page="home"] .l2-body { display: block !important; padding: 12px 14px 14px !important; }
body[data-page="home"] .l2-right { margin-left: 0 !important; padding: 0 14px 12px !important; }
body[data-page="home"] .l2-desc { -webkit-line-clamp: 2 !important; }
/* 首页热门卡片：名字压在图片左上角，名字下面一行是标签（恢复原来的样式）
   覆盖上一版的「图片在上、文字在下」 */
body[data-page="home"] .l2-row { position: relative; display: block !important; height: 220px !important; min-height: 220px !important; border-radius: 16px; overflow: hidden; }
body[data-page="home"] .l2-thumb { position: absolute !important; inset: 0 !important; width: 100% !important; height: 100% !important; }
body[data-page="home"] .l2-thumb img { width: 100% !important; height: 100% !important; object-fit: cover; }
body[data-page="home"] .l2-thumb::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(6,32,40,.62) 0%, rgba(6,32,40,.28) 34%, rgba(6,32,40,0) 62%); }
body[data-page="home"] .l2-body { position: absolute !important; inset: 0; padding: 12px 14px !important; display: block !important; }
body[data-page="home"] .l2-titlerow { display: block !important; }
body[data-page="home"] .l2-title { color: #fff !important; font-weight: 700 !important; font-size: .98rem !important; text-shadow: 0 1px 6px rgba(0,0,0,.45); display: block; }
body[data-page="home"] .l2-titlerow .l2-badge { margin-top: 6px; }
body[data-page="home"] .l2-desc, body[data-page="home"] .l2-meta, body[data-page="home"] .l2-right { display: none !important; }
/* 首页热门卡片：与「热门线路」卡片观感统一 —— 去掉厚重蒙层，恢复底部简介 */
body[data-page="home"] .l2-thumb::after { background: linear-gradient(180deg, rgba(6,32,40,.55) 0%, rgba(6,32,40,.12) 30%, rgba(6,32,40,0) 55%, rgba(6,32,40,.55) 100%); }
body[data-page="home"] .l2-title { font-size: .95rem !important; }
body[data-page="home"] .l2-body { display: flex !important; flex-direction: column; justify-content: space-between; }
body[data-page="home"] .l2-desc {
  display: -webkit-box !important; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden;
  color: rgba(255,255,255,.92) !important; font-size: .78rem !important; line-height: 1.5; margin: 0;
  text-shadow: 0 1px 5px rgba(0,0,0,.5);
}
body[data-page="home"] .l2-titlerow { margin-bottom: auto; }
/* 首页热门卡片：按参考图改为竖长卡片（名字/标签在顶部做成胶囊，底部大号简介） */
body[data-page="home"] .l2-row { height: auto !important; min-height: 0 !important; aspect-ratio: 3 / 4; }
body[data-page="home"] .l2-body { padding: 12px 12px 14px !important; }
body[data-page="home"] .l2-title {
  display: inline-block !important; background: rgba(255,255,255,.94); color: #12333c !important;
  padding: 3px 10px; border-radius: 999px; font-size: .82rem !important; font-weight: 700 !important;
  text-shadow: none !important; line-height: 1.5;
}
body[data-page="home"] .l2-titlerow .l2-badge {
  background: rgba(19,200,146,.92) !important; color: #fff !important; border: 0 !important;
  padding: 3px 10px !important; border-radius: 999px !important; font-size: .72rem !important; font-weight: 600 !important;
}
body[data-page="home"] .l2-titlerow .l2-badge + .l2-badge { background: rgba(255,255,255,.2) !important; }
body[data-page="home"] .l2-desc {
  -webkit-line-clamp: 3 !important; font-size: .86rem !important; line-height: 1.55 !important;
  color: #fff !important; font-weight: 500;
}
/* 首页热门卡片：改为与「热门线路」一致的平面卡片风格（去掉压在图上的白字与深色蒙层）
   线路卡片的构成：白底 + 1px 描边 + 圆角 + 上方图片区（16/11）+ 下方白底文字区，悬停轻微上浮。 */
body[data-page="home"] .l2-row {
  position: relative !important; aspect-ratio: auto !important; height: auto !important;
  background: #fff !important; border: 1px solid var(--l2-line, var(--border)) !important; border-radius: 16px !important;
  overflow: hidden; box-shadow: none !important; transition: transform .22s, box-shadow .22s, border-color .22s;
}
body[data-page="home"] .l2-row:hover { transform: translateY(-4px); box-shadow: 0 10px 26px rgba(15,62,74,.10); border-color: var(--primary-200, #b8e8d8) !important; }
body[data-page="home"] .l2-thumb { position: static !important; display: block !important; width: 100% !important; height: auto !important; aspect-ratio: 16 / 11; border-radius: 0 !important; }
body[data-page="home"] .l2-thumb img { width: 100% !important; height: 100% !important; object-fit: cover; display: block; }
body[data-page="home"] .l2-thumb::after { display: none !important; }
body[data-page="home"] .l2-body { position: static !important; display: block !important; padding: 12px 14px 14px !important; }
body[data-page="home"] .l2-title { display: block !important; background: none !important; color: var(--l2-ink, #22343c) !important; padding: 0 !important; border-radius: 0 !important; font-size: .92rem !important; text-shadow: none !important; }
body[data-page="home"] .l2-titlerow .l2-badge { background: var(--ice, #eef7f9) !important; color: var(--l2-ink-2, #47585f) !important; border: 0 !important; padding: 1px 7px !important; font-size: .7rem !important; }
body[data-page="home"] .l2-desc { display: -webkit-box !important; -webkit-line-clamp: 2 !important; color: var(--l2-ink-3, #7b8f97) !important; font-size: .78rem !important; line-height: 1.5 !important; margin-top: 6px; text-shadow: none !important; -webkit-box-orient: vertical; overflow: hidden; }
/* 与热门线路卡片完全一致：圆角 20px（线路卡是 20px） */
body[data-page="home"] .l2-row { border-radius: 20px !important; }
/* 回到「图片铺满 + 名字左上角 + 标签在名字下 + 简介在底部」的**布局**（用户：只改样式，不要改布局）
   只把观感改平：去掉阴影与悬停位移、蒙层减淡、胶囊改扁平色块 */
body[data-page="home"] .l2-row {
  aspect-ratio: 3 / 4 !important; height: auto !important; border-radius: 20px !important;
  border: 1px solid var(--l2-line, var(--border)) !important; overflow: hidden;
  box-shadow: none !important; transform: none !important; background: #fff !important;
}
body[data-page="home"] .l2-row:hover { transform: none !important; box-shadow: none !important; }
body[data-page="home"] .l2-thumb { position: absolute !important; inset: 0 !important; width: 100% !important; height: 100% !important; aspect-ratio: auto !important; }
body[data-page="home"] .l2-thumb::after { display: block !important; background: linear-gradient(180deg, rgba(6,32,40,.42) 0%, rgba(6,32,40,0) 36%, rgba(6,32,40,0) 56%, rgba(6,32,40,.5) 100%) !important; }
body[data-page="home"] .l2-body { position: absolute !important; inset: 0; display: flex !important; flex-direction: column; justify-content: space-between; padding: 12px !important; }
body[data-page="home"] .l2-title { display: inline-block !important; background: #fff !important; color: #12333c !important; padding: 2px 9px !important; border-radius: 999px !important; font-size: .8rem !important; font-weight: 700 !important; text-shadow: none !important; }
body[data-page="home"] .l2-titlerow .l2-badge { background: rgba(255,255,255,.86) !important; color: #12333c !important; padding: 2px 8px !important; font-size: .68rem !important; border: 0 !important; }
body[data-page="home"] .l2-desc { display: -webkit-box !important; -webkit-line-clamp: 3 !important; -webkit-box-orient: vertical; overflow: hidden; color: rgba(255,255,255,.95) !important; font-size: .82rem !important; line-height: 1.5 !important; text-shadow: 0 1px 4px rgba(0,0,0,.35) !important; }
/* 首页热门卡片（按用户三点反馈）
   ① 背景改白（原来是深色照片铺满，用户说「黑黢黢」，其它模块都是白/绿）
   ② 标签另起一行（不再跟名字挤在同一行）
   ③ 整张卡片可点（把标题链接拉伸覆盖整卡） */
body[data-page="home"] .l2-row { position: relative !important; background: #fff !important; aspect-ratio: auto !important; }
body[data-page="home"] .l2-thumb { position: static !important; inset: auto !important; height: 168px !important; aspect-ratio: auto !important; }
body[data-page="home"] .l2-thumb::after { display: none !important; }
body[data-page="home"] .l2-body { position: static !important; display: block !important; padding: 12px 14px 14px !important; }
body[data-page="home"] .l2-titlerow { display: block !important; }
body[data-page="home"] .l2-title { display: block !important; background: none !important; color: var(--l2-ink, #22343c) !important; padding: 0 !important; border-radius: 0 !important; font-size: .95rem !important; text-shadow: none !important; }
body[data-page="home"] .l2-title::after { content: ""; position: absolute; inset: 0; z-index: 1; }   /* 整卡可点 */
body[data-page="home"] .l2-titlerow .l2-badge {
  display: inline-block !important; margin: 7px 5px 0 0 !important; background: var(--ice, #eef7f9) !important;
  color: var(--l2-ink-2, #47585f) !important; border: 0 !important; padding: 1px 8px !important; font-size: .7rem !important;
}
body[data-page="home"] .l2-titlerow .l2-badge:first-of-type { background: rgba(19,200,146,.14) !important; color: #0a8a63 !important; }  /* 首个标签绿色，呼应站点主色 */
body[data-page="home"] .l2-desc { display: -webkit-box !important; -webkit-line-clamp: 2 !important; -webkit-box-orient: vertical; overflow: hidden; color: var(--l2-ink-3, #7b8f97) !important; font-size: .78rem !important; margin-top: 8px !important; text-shadow: none !important; }
body[data-page="home"] .l2-thumb img, body[data-page="home"] .l2-body { position: relative; }
/* 首页热门卡片（用户三步指令）：① 名字左上角 ② 标签在名字下一行 ③ 卡片高度与「热门线路」一致（434px） */
body[data-page="home"] .l2-row { position: relative !important; height: 434px !important; min-height: 434px !important; aspect-ratio: auto !important; background: #fff !important; border-radius: 20px !important; border: 1px solid var(--l2-line, var(--border)) !important; overflow: hidden; box-shadow: none !important; }
body[data-page="home"] .l2-row:hover { transform: none !important; box-shadow: none !important; }
body[data-page="home"] .l2-thumb { position: absolute !important; inset: 0 !important; width: 100% !important; height: 100% !important; }
body[data-page="home"] .l2-thumb::after { display: block !important; background: linear-gradient(180deg, rgba(6,32,40,.45) 0%, rgba(6,32,40,0) 34%, rgba(6,32,40,0) 52%, rgba(6,32,40,.52) 100%) !important; }
body[data-page="home"] .l2-body { position: absolute !important; inset: 0 !important; display: flex !important; flex-direction: column; justify-content: space-between; padding: 12px 14px 14px !important; }
body[data-page="home"] .l2-titlerow { display: block !important; }
body[data-page="home"] .l2-title { display: block !important; background: none !important; color: #fff !important; padding: 0 !important; border-radius: 0 !important; font-size: .98rem !important; font-weight: 700 !important; text-shadow: 0 1px 6px rgba(0,0,0,.5) !important; }
body[data-page="home"] .l2-title::after { content: "" !important; position: absolute; inset: 0; z-index: 1; }
body[data-page="home"] .l2-titlerow .l2-badge { display: inline-block !important; margin: 7px 5px 0 0 !important; background: rgba(255,255,255,.9) !important; color: #12333c !important; border: 0 !important; padding: 1px 8px !important; font-size: .7rem !important; }
body[data-page="home"] .l2-desc { display: -webkit-box !important; -webkit-line-clamp: 2 !important; -webkit-box-orient: vertical; overflow: hidden; color: rgba(255,255,255,.95) !important; font-size: .8rem !important; line-height: 1.5 !important; text-shadow: 0 1px 5px rgba(0,0,0,.45) !important; }

/* 按用户澄清：不做「还原」，在**当前白底卡片结构**上应用三条指令
   ① 名称在左上角（文字区左上） ② 标签在名称下一行 ③ 卡片总高与热门线路一致（434px）
   → 保持「上方图片区 + 下方白底文字区」，只把总高固定为 434px，图片区自动占满剩余高度 */
body[data-page="home"] .l2-row { display: flex !important; flex-direction: column; height: 434px !important; min-height: 434px !important; }
body[data-page="home"] .l2-thumb { position: static !important; inset: auto !important; flex: 1 1 auto !important; height: auto !important; min-height: 0 !important; width: 100% !important; }
body[data-page="home"] .l2-thumb::after { display: none !important; }
body[data-page="home"] .l2-body { position: static !important; inset: auto !important; flex: 0 0 auto !important; display: block !important; padding: 12px 14px 14px !important; }
body[data-page="home"] .l2-title { color: var(--l2-ink, #22343c) !important; text-shadow: none !important; display: block !important; }
body[data-page="home"] .l2-titlerow .l2-badge { background: var(--ice, #eef7f9) !important; color: var(--l2-ink-2, #47585f) !important; }
body[data-page="home"] .l2-titlerow .l2-badge:first-of-type { background: rgba(19,200,146,.14) !important; color: #0a8a63 !important; }
body[data-page="home"] .l2-desc { color: var(--l2-ink-3, #7b8f97) !important; text-shadow: none !important; }
/* 指令①：景区名称放到卡片左上角（压在图片左上，标签紧随其下）；简介仍留在下方白底文字区 */
body[data-page="home"] .l2-row { position: relative !important; }
body[data-page="home"] .l2-titlerow { position: absolute !important; top: 12px; left: 14px; right: 14px; z-index: 2; }
body[data-page="home"] .l2-title { color: #fff !important; text-shadow: 0 1px 6px rgba(0,0,0,.55) !important; }
body[data-page="home"] .l2-titlerow .l2-badge { background: rgba(255,255,255,.92) !important; color: #12333c !important; }
body[data-page="home"] .l2-titlerow .l2-badge:first-of-type { background: rgba(19,200,146,.95) !important; color: #fff !important; }
body[data-page="home"] .l2-thumb::after { display: block !important; background: linear-gradient(180deg, rgba(6,32,40,.5) 0%, rgba(6,32,40,.12) 26%, rgba(6,32,40,0) 42%) !important; }
/* 用户澄清：没有要求加深色背景 —— 去掉我自行加在图片上的深色渐变蒙层 */
body[data-page="home"] .l2-thumb::after { display: none !important; background: none !important; }
/* 用户：景区名字不能是白色 —— 改为站点深色文字（并去掉为白字加的阴影） */
body[data-page="home"] .l2-title { color: var(--l2-ink, #22343c) !important; text-shadow: none !important; }
/* 用户：标签风格不统一、且压在图片上 —— ① 标签统一为同一种样式 ② 名称与标签回到白底文字区（不压图片） */
body[data-page="home"] .l2-titlerow { position: static !important; top: auto !important; left: auto !important; right: auto !important; }
body[data-page="home"] .l2-title { color: var(--l2-ink, #22343c) !important; }
body[data-page="home"] .l2-titlerow .l2-badge,
body[data-page="home"] .l2-titlerow .l2-badge:first-of-type {
  background: none !important; color: var(--l2-ink-3, #7b8f97) !important;
  border: 1px solid var(--l2-line, #e7eef1) !important; padding: 1px 8px !important; font-size: .7rem !important; font-weight: 500 !important;
}
/* 标签风格统一（覆盖此前所有针对相邻/首个标签的旧规则） */
body[data-page="home"] .l2-titlerow .l2-badge,
body[data-page="home"] .l2-titlerow .l2-badge + .l2-badge,
body[data-page="home"] .l2-titlerow .l2-badge:first-of-type,
body[data-page="home"] .l2-titlerow .l2-badge:last-of-type {
  background: none !important; background-color: transparent !important; color: var(--l2-ink-3, #7b8f97) !important;
  border: 1px solid var(--l2-line, #e7eef1) !important; padding: 1px 8px !important; font-size: .7rem !important; font-weight: 500 !important;
}
/* 指令①：只把「景区名称」放到卡片左上角（标签保持原样，继续留在白底文字区） */
body[data-page="home"] .l2-title { position: absolute !important; top: 12px; left: 14px; right: 14px; z-index: 2; }
/* 指令②：标签放到景区名称下面一行（名称与标签整体定位在卡片左上角，标签紧随名称其下） */
body[data-page="home"] .l2-title { position: static !important; }
body[data-page="home"] .l2-titlerow { position: absolute !important; top: 12px; left: 14px; right: 14px; z-index: 2; }
/* 修正：此前有一批覆盖写了 `.l2-titlerow { top: auto !important; left: auto !important }`，
   导致名称+标签虽为 absolute 却停在静态位置（落到图片下方）。这里把四个方向的值显式改回左上角。 */
body[data-page="home"] .l2-titlerow {
  position: absolute !important;
  top: 12px !important; left: 14px !important; right: 14px !important; bottom: auto !important;
  margin: 0 !important; z-index: 3 !important;
}
/* 指令：标签那一行加 margin-bottom */
body[data-page="home"] .l2-titlerow .l2-badge { margin-bottom: 8px !important; }
/* 指令：图片加尺寸限制 —— 图片区固定高度，保证每张卡片里的图片大小一致 */
body[data-page="home"] .l2-thumb { flex: 0 0 auto !important; height: 260px !important; }
body[data-page="home"] .l2-thumb img { width: 100% !important; height: 260px !important; object-fit: cover !important; display: block !important; }
/* 指令：标签不要压图片 —— 名称单独定位在卡片左上角（可压图），标签行回到图片下方的白底文字区 */
body[data-page="home"] .l2-title { position: absolute !important; top: 12px !important; left: 14px !important; right: auto !important; z-index: 3 !important; }
body[data-page="home"] .l2-titlerow { position: static !important; top: auto !important; left: auto !important; right: auto !important; display: block !important; }
/* 指令（澄清）：标签在名字下一行、且在图片上 —— 名称与标签一起定位在卡片左上角（压在图片上） */
body[data-page="home"] .l2-title { position: static !important; }
body[data-page="home"] .l2-titlerow {
  position: absolute !important; top: 12px !important; left: 14px !important; right: 14px !important; bottom: auto !important;
  display: flex !important; flex-wrap: wrap !important; align-items: center !important; margin: 0 !important; z-index: 3 !important;
}
body[data-page="home"] .l2-title { flex: 0 0 100% !important; }
/* 指令：卡片从上到下 = 名字 → 标签 → 图片 → 简介 → 查看
   做法：把 .l2-body 设为 display:contents，使「名称行/简介」成为卡片的直接弹性项，再用 order 排序；
   「查看」用卡片伪元素补出。 */
body[data-page="home"] .l2-row { display: flex !important; flex-direction: column !important; height: 434px !important; }
body[data-page="home"] .l2-body { display: contents !important; }
body[data-page="home"] .l2-titlerow { position: static !important; order: 1 !important; padding: 12px 14px 0 !important; display: flex !important; flex-wrap: wrap !important; align-items: center !important; }
body[data-page="home"] .l2-thumb { position: static !important; order: 2 !important; flex: 0 0 auto !important; height: 236px !important; margin-top: 8px !important; }
body[data-page="home"] .l2-thumb img { height: 236px !important; object-fit: cover !important; width: 100% !important; }
body[data-page="home"] .l2-desc { order: 3 !important; padding: 10px 14px 0 !important; margin: 0 !important; }
body[data-page="home"] .l2-row::after { content: "查看 →"; order: 4 !important; display: block; padding: 8px 14px 12px; color: var(--primary-700, #0a8a63); font-weight: 600; font-size: .8rem; }
/* 与热门线路卡片一致：悬停轻微上浮 + 轻阴影 */
body[data-page="home"] .l2-row { transition: transform .22s, box-shadow .22s, border-color .22s; }
body[data-page="home"] .l2-row:hover { transform: translateY(-4px) !important; box-shadow: 0 10px 26px rgba(15,62,74,.10) !important; border-color: var(--primary-200, #b8e8d8) !important; }
/* 与热门线路一致：①「查看」左对齐（线路卡 .rc-cta 在左侧）②简介不截断、不被遮挡 */
body[data-page="home"] .l2-row::after { text-align: left !important; padding: 8px 14px 12px !important; }
body[data-page="home"] .l2-desc { display: block !important; -webkit-line-clamp: unset !important; overflow: visible !important; }
/* 让内容装进 434px（与热门线路等高）：图片区高度按内容让位，确保简介完整显示、「查看」不被裁掉 */
body[data-page="home"] .l2-thumb { height: 186px !important; }
body[data-page="home"] .l2-thumb img { height: 186px !important; }
/* 指令：① 简介固定 3 行 ②「查看」左对齐（卡片为 flex 列，若 align-items 居中会把按钮挤到中间，这里强制拉伸） */
body[data-page="home"] .l2-row { align-items: stretch !important; }
body[data-page="home"] .l2-desc {
  display: -webkit-box !important; -webkit-box-orient: vertical !important; -webkit-line-clamp: 3 !important;
  overflow: hidden !important; max-height: calc(3 * 1.5 * .78rem) !important;
}
body[data-page="home"] .l2-row::after { align-self: flex-start !important; text-align: left !important; width: 100% !important; }
/* 指令：简介固定 2 行（-webkit-line-clamp:2 会在被截断处自动显示省略号 …） */
body[data-page="home"] .l2-desc {
  -webkit-line-clamp: 2 !important;
  max-height: calc(2 * 1.5 * .78rem) !important;
}
/* 卡片标签胶囊（与站点 tag-level 风格一致） */
.rc-tags { display: flex; flex-wrap: wrap; gap: 5px; margin: 7px 0 0; }
.rc-tags span { display: inline-block; padding: 1px 8px; border-radius: 999px; font-size: .7rem; font-weight: 500;
  color: var(--l2-ink-2, #47585f); background: var(--ice, #eef7f9); border: 1px solid var(--l2-line, #e7eef1); }
/* 名称+标签在图片上方时的内边距 */
.rc-head-top { padding: 12px 14px 0; }
.rc-head-top .rc-title { margin: 0; }
/* 名称与标签分两行、名称字号加大 */
.rc-head-top .rc-title { font-size: 1.16rem !important; font-weight: 700 !important; line-height: 1.35 !important; margin: 0 !important; }
.rc-head-top .rc-tags { display: flex !important; margin-top: 9px !important; }