/* 居安康官网 — 对齐旧织梦站（定宽 ~1000px、橙导航、密排模块） */
:root {
  --bg: #ebebeb;
  --page: #ffffff;
  --ink: #333333;
  --muted: #666666;
  --line: #e0e0e0;
  --brand: #4fb033;
  --brand-dark: #3a8f24;
  --orange: #f07a1a;
  --orange-dark: #e85d04;
  --orange-hot: #ec4e21;
  --nav: #f07a1a;
  --footer-bg: #f5f5f5;
  --footer-ink: #555;
  --max: 1000px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: "Microsoft YaHei", "PingFang SC", "Noto Sans SC", SimSun, sans-serif;
  color: var(--ink);
  background: var(--bg);
  line-height: 1.55;
  font-size: 14px;
}
a { color: var(--brand-dark); text-decoration: none; }
a:hover { color: var(--orange-hot); text-decoration: underline; }
img { max-width: 100%; height: auto; display: block; border: 0; }
ul, ol { margin: 0; padding: 0; }
.clear { clear: both; height: 0; overflow: hidden; }

.wrap {
  width: var(--max);
  max-width: 100%;
  margin: 0 auto;
  padding: 0 8px;
}

/* —— 顶栏（logo | 城市 | 促销 | 热线） —— */
.top-bar {
  background: #fff;
  border-bottom: 1px solid #eee;
}
.top-bar-inner {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 6px 0 5px;
  min-height: 56px;
}
.logo {
  display: flex;
  align-items: center;
  gap: 8px;
  text-decoration: none !important;
  flex-shrink: 0;
}
.logo img.logo-mark {
  height: 40px; /* layout1：对齐 logo1 顶栏比例，勿过大 */
  width: auto !important;
  max-width: 220px;
  object-fit: contain;
}
.logo img.logo-wide { display: none !important; } /* nav3: 禁用合成条 logo-desktop */
.logo-text { display: none; }
.city-sel {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  border: 1px solid #ddd;
  border-radius: 2px;
  padding: 4px 8px;
  color: var(--orange-hot);
  font-weight: 700;
  font-size: 13px;
  background: #fffaf7;
  white-space: nowrap;
}
.top-promo {
  flex: 1;
  text-align: center;
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
}
/* logo1：仅用裁切后的 promo-2998（无 Logo）；旧 top-promo.jpg / logo-desktop 禁止 */
.top-promo img.promo-img {
  background: transparent;
  display: inline-block;
  height: 40px;
  width: auto;
  max-height: 44px;
  max-width: min(380px, 100%);
  object-fit: contain;
  margin: 0 auto;
}
.top-promo img:not(.promo-img) {
  display: none !important;
}
.top-promo .promo-text {
  display: block;
  color: #ec4e21;
  font-weight: 800;
  font-size: 28px;
  letter-spacing: 0.04em;
  line-height: 1.15;
  white-space: nowrap;
  font-family: "Microsoft YaHei", "PingFang SC", "SimHei", "Noto Sans SC", sans-serif;
}
.top-promo .promo-text[hidden] { display: none !important; }
.top-promo .promo-aldehyde {
  display: inline-block;
  font-size: 1.18em;
  font-weight: 900;
  color: #d4a017;
  background: linear-gradient(180deg, #f0c14b 0%, #c47a12 55%, #a85a0a 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  transform: translateY(1px);
  font-family: "KaiTi", "STKaiti", "楷体", "Microsoft YaHei", serif;
  letter-spacing: 0.02em;
  padding: 0 1px;
}
.hotline-block {
  margin-left: auto;
  text-align: right;
  text-decoration: none !important;
  color: inherit;
  flex-shrink: 0;
  padding-right: 4px;
}
.hotline-label {
  display: block;
  font-size: 12px;
  color: #999;
}
.hotline-num {
  display: block;
  font-size: 26px;
  font-weight: 800;
  color: #444;
  letter-spacing: 0.04em;
  font-family: Arial, "Microsoft YaHei", sans-serif;
  line-height: 1.15;
}
.hotline-block:hover .hotline-num { color: var(--orange); }

/* —— 主导航（旧站橙条：渐变底 + 分割线 + 按下态） —— */
.site-header {
  background-color: var(--nav);
  background-image:
    linear-gradient(180deg, #ffb14d 0%, #ff8f2e 28%, #f07a1a 62%, #e2640a 100%);
  box-shadow: 0 2px 0 rgba(180, 70, 0, .35), 0 3px 8px rgba(0,0,0,.12);
  position: relative; /* stick2: 高于竖菜 z-20，勿被吸顶竖菜盖住 */
  z-index: 30;
  border-top: 1px solid rgba(255,255,255,.35);
  border-bottom: 1px solid rgba(160, 60, 0, .35);
}
.header-inner { padding: 0; }
.nav ul {
  display: flex;
  list-style: none;
  margin: 0;
  padding: 0;
  width: 100%;
}
.nav > ul > li {
  flex: 1;
  position: relative;
  text-align: center;
  border-right: 1px solid rgba(255,255,255,.45);
  box-shadow: inset -1px 0 0 rgba(0,0,0,.08);
}
.nav > ul > li:last-child { border-right: 0; box-shadow: none; }
.nav > ul > li > a {
  display: block;
  position: relative;
  padding: 13px 6px;
  color: #fff !important;
  font-weight: 700;
  font-size: 15px;
  text-decoration: none !important;
  white-space: nowrap;
  text-shadow: 0 1px 0 rgba(0,0,0,.18);
  letter-spacing: 0.02em;
}
.nav > ul > li > a:hover,
.nav > ul > li:hover > a {
  background: linear-gradient(180deg, rgba(0,0,0,.06) 0%, rgba(0,0,0,.18) 100%);
  box-shadow: inset 0 2px 0 rgba(255,255,255,.18);
}
.nav > ul > li > a.active {
  background: linear-gradient(180deg, rgba(90,30,0,.18) 0%, rgba(0,0,0,.28) 100%);
  box-shadow: inset 0 2px 0 rgba(255,255,255,.22);
}
/* 当前项底部居中小黄三角（向下指向内容，对齐旧站） */
.nav > ul > li > a.active::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%) translateY(100%);
  width: 0;
  height: 0;
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  border-top: 8px solid #ffe566;
  z-index: 2;
  pointer-events: none;
}
.nav .sub {
  display: none;
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
  background: #fff;
  border: 1px solid #f0c9a0;
  box-shadow: 0 6px 16px rgba(0,0,0,.12);
  z-index: 50;
  text-align: left;
  min-width: 160px;
}
/* 桌面：精确指针 + 可悬停时用 hover；触屏/窄屏靠 .open（见 site.js） */
@media (hover: hover) and (pointer: fine) {
  .nav li:hover > .sub { display: block; }
}
.nav li.open > .sub { display: block; }
.nav li:has(> .sub) > a { cursor: pointer; }
.nav li:has(> .sub) > a::after {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: 5px;
  vertical-align: middle;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 5px solid rgba(255,255,255,.9);
}
.nav .sub a {
  display: block;
  padding: 9px 14px;
  color: #444 !important;
  font-weight: 600;
  font-size: 13px;
  text-decoration: none !important;
  border-bottom: 1px solid #f3f3f3;
}
.nav .sub a:hover {
  background: #fff4eb;
  color: var(--orange-hot) !important;
}

/* —— Banner + 左侧场景导航 —— */
.hero-stage {
  background: #fff;
  border-bottom: 1px solid var(--line);
}
.hero-stage .wrap {
  position: relative;
  padding: 0;
}
.slides-box {
  position: relative;
  height: 280px;
  background: #d8d8d8 center/cover no-repeat;
  overflow: hidden;
}
.slides-box .banner-img {
  width: 100%;
  height: 280px;
  object-fit: cover;
}
.slides-box .banner-fallback {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: flex-end;
  padding: 28px 28px 28px 220px;
  background: linear-gradient(105deg, rgba(20,60,35,.75), rgba(240,122,26,.45));
  color: #fff;
}
.slides-box .banner-fallback h1 {
  margin: 0 0 6px;
  font-size: 26px;
  border: 0;
  padding: 0;
  color: #fff;
}
.slides-box .banner-fallback p {
  margin: 0;
  font-size: 14px;
  opacity: .95;
  max-width: 36em;
}
/* —— stick6：竖菜在左；右缘对齐主导航左缘；auto 高 + 字号14；absolute 叠 banner；JS is-fixed —— */
.float-page {
  position: relative;
  /* padding 与 .header-inner 同体系；竖菜 right = wrap 左缘（=橙主导航内容左） */
  padding-left: 0;
  padding-right: 0;
  overflow: visible;
}
.float-page .hero-stage,
.hero-stage {
  position: relative;
  padding: 0;
  overflow: hidden;
  width: 100%;
  z-index: 1;
}
.float-page > .l-nav,
.l-nav {
  /* 默认 absolute 叠 banner 左侧；右缘贴 wrap 左缘；JS：left = wrapLeft - navWidth */
  position: absolute;
  left: 0; /* 回退占位；桌面由 l-nav-stick.js 写成 -navWidth / wrapLeft-navWidth */
  top: 0;
  right: auto;
  bottom: auto;
  float: none;
  width: calc(100% / 6);
  max-width: 168px;
  min-width: 110px;
  height: auto; /* stick6：不跟 banner 等高，按菜单项自适应 */
  margin: 0;
  z-index: 20; /* 高于 banner(1)，低于 site-header(30) */
  overflow-x: hidden;
  overflow-y: hidden; /* 勿裁掉首项 */
  background-color: var(--orange);
  background-image: linear-gradient(180deg, #ff9a3c 0%, #f07a1a 55%, #e2640a 100%);
  box-shadow: 2px 3px 12px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.25);
  border: 1px solid rgba(160, 60, 0, .3);
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  pointer-events: auto;
}
/* 滚过 hero 后：贴视口顶；left 由 JS = wrapLeft - navWidth（右缘仍 = 主导航左缘） */
.float-page > .l-nav.is-fixed,
.l-nav.is-fixed {
  position: fixed;
  top: 0;
  right: auto;
  bottom: auto;
  float: none;
  margin: 0;
  z-index: 20;
}
/* 主体：正常文档流在 hero 下（不靠负 margin 叠菜） */
.float-page .page-below-hero,
.page-below-hero {
  background: #fff;
  border: 1px solid #e6e6e6;
  padding: 10px 16px 18px;
  margin: 0;
  position: relative;
  z-index: 1;
  clear: both;
}
.l-nav ul {
  list-style: none;
  margin: 0;
  padding: 0;
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  height: auto;
  min-height: 0;
}
.l-nav li {
  margin: 0;
  padding: 0;
  flex: 0 0 auto;
  min-height: 0;
  display: flex;
}
.l-nav a {
  display: flex;
  flex: 0 0 auto;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 0;
  width: 100%;
  padding: 10px 6px;
  color: #fff !important;
  font-weight: 700;
  font-size: 15px; /* stick6：与主导航同号 */
  line-height: 1.3;
  letter-spacing: 0.01em;
  text-align: center;
  text-decoration: none !important;
  text-shadow: 0 1px 0 rgba(0,0,0,.2);
  border-bottom: 1px solid rgba(255,255,255,.32);
  box-shadow: inset 0 -1px 0 rgba(0,0,0,.1);
  box-sizing: border-box;
}
.l-nav a:last-child { border-bottom: 0; box-shadow: none; }
.l-nav a:hover { background: rgba(0,0,0,.14); }
.l-nav a.active {
  background: rgba(0,0,0,.2);
  box-shadow: inset 0 0 0 2px rgba(255,255,255,.22);
}
.l-nav .l-nav-ico,
.l-nav img.l-nav-ico,
.l-nav img {
  width: 34px;
  height: 34px;
  object-fit: contain;
  background: transparent;
  border-radius: 0;
  flex-shrink: 0;
}
.l-nav .l-nav-txt {
  display: block;
  max-width: 100%;
  word-break: break-all;
}
.slides-box.slides-tall,
.slides-tall {
  height: 480px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.slides-tall .banner-img {
  height: 480px;
  width: 100%;
  object-fit: cover;
}
.slides-box .slide {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
}
.slides-box .slide.is-on { z-index: 1; }
.slides-box .slide-link {
  display: block;
  width: 100%;
  height: 100%;
}
.slide-dots {
  position: absolute;
  left: 50%;
  bottom: 14px;
  transform: translateX(-50%);
  z-index: 6;
  display: flex;
  gap: 8px;
  padding-left: 18%; /* clear absolute l-nav on left (~1/6) */
}
.slide-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  border: 0;
  padding: 0;
  cursor: pointer;
  background: rgba(255,255,255,.55);
  box-shadow: 0 0 0 1px rgba(0,0,0,.15);
}
.slide-dot.is-on {
  background: #f07a1a;
  box-shadow: 0 0 0 2px #fff;
}
.svc-hero .slides-box { min-height: 480px; height: 480px; }
.page-below-hero {
  padding-top: 16px;
  padding-bottom: 24px;
}
.svc-mid {
  margin: 0 0 18px;
  border: 1px solid #e6e6e6;
  background: #fafafa;
  overflow: hidden;
}
.svc-mid img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 520px;
  object-fit: contain;
  background: #fff;
}
@media (max-width: 860px) {
  .slides-box.slides-tall,
  .slides-tall,
  .slides-tall .banner-img { height: 240px; }
  .slide-dots { padding-left: 0; bottom: 10px; }
  .svc-hero .slides-box { min-height: 240px; height: 240px; }
  .l-nav { width: calc(100% / 6); max-width: 150px; }
}

/* —— 主内容区 —— */
.page-body {
  background: var(--bg);
  padding: 12px 0 0;
}
.page-body:has(.float-page) {
  padding-top: 0; /* banner 紧贴主导航下缘 */
}
.page-body > .wrap {
  background: transparent;
}
.content-panel {
  background: #fff;
  border: 1px solid #e6e6e6;
  margin-bottom: 12px;
  padding: 12px 14px;
}
.content-panel.tight { padding: 0; overflow: hidden; }

/* 首页双栏：新闻 | 知识步骤 */
.ppjj {
  display: grid;
  grid-template-columns: 1.35fr 0.95fr;
  gap: 0;
  background: #fff;
  border: 1px solid #e6e6e6;
  margin-bottom: 12px;
}
.ppjj-news {
  padding: 10px 14px 12px;
  border-right: 1px solid #eee;
}
.ppjj-side {
  padding: 10px 14px 12px;
  background: #fafafa;
}
.ppjj h3, .mod-title {
  margin: 0 0 8px;
  font-size: 15px;
  color: #333;
  border-bottom: 2px solid var(--brand);
  padding: 0 0 6px;
  font-weight: 800;
}
.ppjj h3 span, .mod-title span {
  color: #999;
  font-weight: 400;
  font-size: 12px;
  margin-left: 6px;
}
.hotnews { list-style: none; }
.hotnews li {
  display: flex;
  gap: 10px;
  align-items: baseline;
  padding: 6px 0;
  border-bottom: 1px dashed #eee;
  font-size: 13px;
}
.hotnews li:last-child { border-bottom: 0; }
.hotnews a {
  flex: 1;
  color: var(--brand-dark);
  font-weight: 600;
  text-decoration: none;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.hotnews a:hover { color: var(--orange-hot); text-decoration: underline; }
.hotnews .date {
  color: #999;
  font-size: 12px;
  flex-shrink: 0;
  font-family: Arial, sans-serif;
}
.r-list { list-style: none; }
.r-list li {
  padding: 7px 0 7px 12px;
  border-bottom: 1px dashed #e5e5e5;
  position: relative;
  font-size: 13px;
}
.r-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 14px;
  width: 5px;
  height: 5px;
  background: var(--orange);
  border-radius: 50%;
}
.r-list a { color: #444; font-weight: 600; text-decoration: none; }
.r-list a:hover { color: var(--orange-hot); }

/* 设备 + 预约表单 */
.team-row {
  display: grid;
  grid-template-columns: 1.45fr 0.9fr;
  gap: 12px;
  margin-bottom: 12px;
}
.mod-box {
  background: #fff;
  border: 1px solid #e6e6e6;
  padding: 10px 12px 14px;
}
.equip-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}
.equip-card {
  border: 1px solid #eee;
  background: #fff;
  overflow: hidden;
}
.equip-card img {
  width: 100%;
  aspect-ratio: 4/3;
  object-fit: cover;
  background: #f0f0f0;
}
.equip-card .t {
  padding: 6px 8px 8px;
  font-size: 12px;
  font-weight: 700;
  color: #444;
  line-height: 1.35;
}
.book-box {
  background: #f3f3f3;
  border: 1px solid #e0e0e0;
  padding: 12px 14px 14px;
}
.book-box h3 {
  margin: 0 0 10px;
  font-size: 16px;
  color: var(--orange-hot);
  border-bottom: 2px solid var(--orange);
  padding-bottom: 6px;
}
.book-box .lead-form label {
  display: grid;
  grid-template-columns: 72px 1fr;
  align-items: center;
  gap: 6px;
  margin-bottom: 8px;
  font-size: 13px;
  font-weight: 600;
}
.book-box .lead-form input,
.book-box .lead-form select,
.book-box .lead-form textarea {
  font: inherit;
  padding: 5px 8px;
  border: 1px solid #ccc;
  background: #fff;
  border-radius: 0;
  width: 100%;
}
.book-box .btn.submit {
  width: 100%;
  margin-top: 4px;
  border-radius: 2px;
  background: var(--orange);
  border: 0;
  color: #fff;
  font-weight: 800;
  padding: 9px 12px;
  cursor: pointer;
}
.book-box .btn.submit:hover { background: var(--orange-dark); }

.partners-box {
  background: #fff;
  border: 1px solid #e6e6e6;
  margin-bottom: 12px;
  padding: 10px 12px 12px;
}
.partners-box img { width: 100%; }

.adv-strip {
  margin: 0 0 12px;
  line-height: 0;
}
.adv-strip img { width: 100%; height: auto; display: block; image-rendering: -webkit-optimize-contrast; }
.footer-adv { background: transparent; }
.footer-adv .wrap { max-width: 1000px; margin: 0 auto; padding: 0; }
.footer-adv .adv-strip { display: block; }
.adv-bar-fallback {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  background: linear-gradient(90deg, #ef7a1c, #e85d04);
  color: #fff;
}
.adv-bar-fallback article {
  padding: 14px 10px;
  text-align: center;
  border-right: 1px solid rgba(255,255,255,.28);
  font-size: 13px;
}
.adv-bar-fallback article:last-child { border-right: 0; }
.adv-bar-fallback h4 { margin: 0 0 4px; font-size: 14px; color: #fff; }
.adv-bar-fallback p { margin: 0; opacity: .95; font-size: 12px; }

/* 内页通用 */
.crumb {
  font-size: 12px;
  color: #888;
  margin: 0 0 10px;
  padding: 8px 0 0;
}
.crumb a { color: #666; }
.page-hero {
  background: #fff;
  border: 1px solid #e6e6e6;
  padding: 14px 16px 12px;
  margin-bottom: 12px;
}
.page-hero h1 {
  margin: 0 0 6px;
  font-size: 22px;
  border-left: 4px solid var(--orange);
  padding-left: 10px;
  line-height: 1.3;
}
.page-hero .lead { margin: 0; color: var(--muted); font-size: 13px; }
.kicker {
  color: var(--brand);
  font-weight: 700;
  margin: 0 0 4px;
  font-size: 12px;
}
h2 {
  font-size: 16px;
  margin: 0 0 10px;
  padding-left: 8px;
  border-left: 3px solid var(--orange);
}
h3 { font-size: 14px; margin: 0 0 6px; }
.section {
  background: #fff;
  border: 1px solid #e6e6e6;
  padding: 14px 16px;
  margin-bottom: 12px;
}
.section.alt { background: #fafafa; }
.compliance, .compliance-inline {
  font-size: 12px;
  color: #7a3f12;
  background: #fff4e8;
  border: 1px solid #f0d2b0;
  padding: 8px 10px;
  margin: 8px 0;
}
.btn {
  display: inline-block;
  border: 1px solid transparent;
  padding: 7px 14px;
  font-weight: 700;
  cursor: pointer;
  text-decoration: none !important;
  font-size: 13px;
  border-radius: 2px;
}
.btn.primary { background: var(--orange); color: #fff !important; }
.btn.primary:hover { background: var(--orange-dark); }
.btn.ghost {
  background: #fff;
  border-color: #ccc;
  color: #444 !important;
}
.btn.small { padding: 4px 10px; font-size: 12px; }

.card-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(3, 1fr);
}
.card {
  background: #fff;
  border: 1px solid #e8e8e8;
  overflow: hidden;
}
.card a { color: inherit; text-decoration: none !important; display: block; }
.card img {
  width: 100%;
  aspect-ratio: 16/10;
  object-fit: cover;
  background: #eee;
}
.card .card-body { padding: 8px 10px 10px; }
.card h2, .card h3 {
  margin: 0 0 4px;
  border: 0;
  padding: 0;
  font-size: 14px;
}
.card p { margin: 0; color: var(--muted); font-size: 12px; }

.scene-grid, .fact-grid, .why-grid {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(2, 1fr);
  list-style: none;
}
.scene-grid li, .fact-grid li, .why-grid article {
  background: #fff;
  border: 1px solid #eee;
  padding: 10px 12px;
}
.fact-grid strong { display: block; color: var(--brand-dark); margin-bottom: 2px; }
.plain-list { padding-left: 1.1em; }
.plain-list li { margin: 4px 0; }

.flow-steps {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(5, 1fr);
  list-style: none;
}
.flow-steps li {
  background: #fff;
  border: 1px solid #eee;
  padding: 10px 8px;
  text-align: center;
}
.flow-steps .step {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--orange);
  color: #fff;
  font-weight: 800;
  font-size: 12px;
  margin-bottom: 6px;
}
.flow-list { list-style: none; }
.flow-list li {
  margin: 6px 0;
  padding: 8px 10px;
  background: #fff;
  border: 1px solid #eee;
}
.flow-list .step { font-weight: 800; color: var(--orange); margin-right: 6px; }

.split-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: 1.25fr 0.85fr;
}
.panel {
  background: #fff;
  border: 1px solid #e6e6e6;
  padding: 12px 14px;
}
.article-list { list-style: none; }
.article-list li { border-bottom: 1px dashed #eee; }
.article-list a {
  display: block;
  padding: 8px 0;
  color: inherit;
  text-decoration: none;
}
.article-list .a-title { font-weight: 700; color: var(--brand-dark); }
.article-list .a-sum, .muted, .meta { color: var(--muted); font-size: 12px; }
.article-list.dense .a-sum { display: block; margin-top: 2px; }
.more-link { margin-top: 10px; font-weight: 700; }
.section-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 8px;
}
.section-head h2 { margin-bottom: 0; }
.section-head .more { font-weight: 700; color: var(--orange-hot); font-size: 12px; }

.faq-item {
  background: #fff;
  border: 1px solid #eee;
  padding: 8px 12px;
  margin-bottom: 6px;
}
.faq-item summary { cursor: pointer; font-weight: 700; }
.contact-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: 1fr 1fr;
}
.contact-card, .contact-form-wrap {
  background: #fff;
  border: 1px solid #e6e6e6;
  padding: 14px;
}
.lead-form { display: grid; gap: 8px; }
.lead-form label { display: grid; gap: 3px; font-weight: 600; font-size: 13px; }
.lead-form input, .lead-form select, .lead-form textarea {
  font: inherit;
  padding: 6px 8px;
  border: 1px solid #ccc;
  background: #fff;
}
.form-msg { min-height: 1.2em; font-weight: 600; font-size: 12px; }
.form-msg.ok { color: var(--brand-dark); }
.form-msg.err { color: #a12424; }
.price { font-size: 16px; font-weight: 800; color: var(--orange-hot); }
.article-body {
  background: #fff;
  border: 1px solid #e6e6e6;
  padding: 12px 14px;
  margin: 10px 0;
  line-height: 1.7;
}
.article-body img { margin: 8px 0; }
.article-cta { margin: 12px 0 8px; }
.article-page .wrap.narrow { width: min(100%, 860px); }

/* —— 页脚（浅灰，接近旧站 foot_bg） —— */
.site-footer {
  margin-top: 0;
  background: #3a3a3a;
  color: #ccc;
  padding: 0 0 16px;
  font-size: 12px;
}
.site-footer a { color: #eee; }
.site-footer a:hover { color: #fff; }
.footer-adv {
  background: #fff;
  line-height: 0;
}
.footer-adv img { width: 100%; max-width: 1000px; margin: 0 auto; }
.footer-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: 1.2fr 1fr 1.1fr;
  padding: 18px 0 10px;
}
.footer-brand { font-size: 14px; margin: 0 0 8px; color: #fff; }
.footer-col h3 {
  margin: 0 0 8px;
  color: #fff;
  font-size: 13px;
  border: 0;
  padding: 0;
}
.footer-col p, .footer-col li { margin: 4px 0; line-height: 1.6; }
.footer-col ul { list-style: none; }
.footer-col.nav-cols a {
  display: inline-block;
  margin-right: 10px;
  margin-bottom: 4px;
}
.site-footer .compliance {
  background: rgba(255,255,255,.06);
  border-color: rgba(255,255,255,.12);
  color: #e8d0b0;
  margin-top: 8px;
}
.footer-bottom {
  border-top: 1px solid rgba(255,255,255,.12);
  padding-top: 10px;
  color: #999;
}
.footer-bottom a { color: #bbb; }
.beian { white-space: nowrap; }


/* —— WEB 菜单还原：左侧橙竖 + 服务详情 —— */
/* nav2: hide icon dropdown panels — 子项只在左侧竖菜 */
.nav .sub.sub-panel { display: none !important; }

.nav .sub.sub-panel {
  display: none;
  position: absolute;
  left: 0;
  right: auto;
  top: 100%;
  min-width: 220px;
  width: max-content;
  max-width: 280px;
  background: var(--orange);
  border: 0;
  box-shadow: 0 8px 18px rgba(0,0,0,.18);
  z-index: 60;
  padding: 4px 0;
  text-align: left;
}
@media (hover: hover) and (pointer: fine) {
  .nav li:hover > .sub.sub-panel { display: block; }
}
.nav li.open > .sub.sub-panel { display: block; }
.nav .sub.sub-panel a.sub-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  color: #fff !important;
  font-weight: 700;
  font-size: 13px;
  border-bottom: 1px solid rgba(255,255,255,.18);
  text-decoration: none !important;
}
.nav .sub.sub-panel a.sub-item:last-child { border-bottom: 0; }
.nav .sub.sub-panel a.sub-item:hover {
  background: rgba(0,0,0,.14);
  color: #fff !important;
}
.nav .sub.sub-panel .sub-ico {
  width: 28px;
  height: 28px;
  border-radius: 4px;
  object-fit: cover;
  background: #fff;
  flex-shrink: 0;
}

.page-with-side {
  display: grid;
  grid-template-columns: 188px 1fr;
  gap: 12px;
  align-items: start;
  padding-bottom: 16px;
}
.side-orange {
  background-color: var(--orange);
  background-image: linear-gradient(180deg, #ff8f2e 0%, #f07a1a 55%, #e2640a 100%);
  box-shadow: 2px 3px 10px rgba(0,0,0,.18);
  position: sticky;
  top: 52px;
  z-index: 8;
  border: 1px solid rgba(160, 60, 0, .25);
}
.side-orange ul { list-style: none; margin: 0; padding: 0; }
.side-orange a {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 16px 8px 14px;
  color: #fff !important;
  font-weight: 700;
  font-size: 12px;
  text-align: center;
  text-decoration: none !important;
  border-bottom: 1px solid rgba(255,255,255,.28);
  box-shadow: inset 0 -1px 0 rgba(0,0,0,.08);
  line-height: 1.35;
  text-shadow: 0 1px 0 rgba(0,0,0,.15);
  min-height: 88px;
}
.side-orange a:last-child { border-bottom: 0; box-shadow: none; }
.side-orange a:hover,
.side-orange a.active {
  background: rgba(0,0,0,.16);
  box-shadow: inset 0 0 0 2px rgba(255,255,255,.2);
}
.side-orange img {
  width: 40px;
  height: 40px;
  border-radius: 4px;
  object-fit: cover;
  background: #fff;
  box-shadow: 0 1px 3px rgba(0,0,0,.2);
}
.side-main {
  background: #fff;
  border: 1px solid #e6e6e6;
  padding: 0 0 18px;
  min-width: 0;
}
.side-main > .page-banner {
  margin: 0 0 8px;
  border-bottom: 1px solid #eee;
}
.side-main > .crumb,
.side-main > .chan-title,
.side-main > .chan-lead,
.side-main > .page-hero,
.side-main > .section,
.side-main > .svc-detail,
.side-main > .article-page,
.side-main > .contact-grid {
  padding-left: 16px;
  padding-right: 16px;
}
.side-main > .crumb { padding-top: 10px; }
.page-banner {
  width: 100%;
  height: 168px;
  overflow: hidden;
  background: #d8d8d8 center/cover no-repeat;
}
.page-banner img {
  width: 100%;
  height: 168px;
  object-fit: cover;
  object-position: center;
  display: block;
}
.side-main .page-hero { margin-top: 0; padding-top: 4px; }
.side-main .svc-detail, .side-main .article-page { padding-left: 16px; padding-right: 16px; }
.side-main .section.faq,
.side-main .section.facts { padding-left: 16px; padding-right: 16px; }

/* 旧站风格栏目条：橙渐变条仅放栏目名，说明在条下方 */
.crumb-old {
  color: #888;
  border-bottom: 1px dashed #ccc;
  padding-bottom: 8px;
  margin-bottom: 10px;
}
.crumb-old .crumb-home {
  margin-right: 2px;
  color: #999;
}
.chan-title {
  background: linear-gradient(90deg, #e2640a 0%, #f5a623 45%, #ffe6b0 100%);
  padding: 10px 16px;
  margin: 0 0 0;
  border-left: 3px solid #b84a08;
}
.chan-title h1 {
  margin: 0;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.4;
  border: 0;
  padding: 0;
}
.chan-lead {
  margin: 10px 0 16px;
  font-size: 14px;
  color: #333;
  line-height: 1.6;
}
.svc-detail .svc-block {
  margin: 14px 0;
  padding-top: 8px;
  border-top: 1px dashed #eee;
}
.svc-detail .svc-block h2 {
  margin: 0 0 8px;
  font-size: 16px;
  color: #333;
  border-bottom: 2px solid var(--brand);
  padding-bottom: 4px;
  display: inline-block;
}
.svc-detail .svc-block-body ul,
.svc-detail .svc-block-body ol {
  margin: 0 0 8px 1.2em;
  padding: 0;
}
.svc-detail .svc-block-body li { margin: 4px 0; }
.svc-cta {
  margin-top: 18px;
  padding: 12px 14px;
  background: #fff8f2;
  border: 1px solid #f0c9a0;
}
.svc-cta .cta-phones { font-size: 15px; margin: 8px 0; }
.card a.card-link {
  display: block;
  color: inherit;
  text-decoration: none !important;
}
.card a.card-link:hover h2 { color: var(--orange-hot); }
.card .card-actions { margin-top: 8px; }

@media (max-width: 900px) {
  .page-with-side { grid-template-columns: 1fr; }
  .side-orange {
    position: static;
    display: grid;
  }
  .side-orange ul {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
  }
  .side-orange a {
    border-bottom: 0;
    border-right: 1px solid rgba(255,255,255,.22);
    padding: 10px 4px;
    font-size: 11px;
  }
  .side-orange li:last-child a { border-right: 0; }
}
@media (max-width: 640px) {
  .side-orange ul { grid-template-columns: 1fr 1fr; }
  .side-orange a { border-bottom: 1px solid rgba(255,255,255,.22); }
}



/* stick6：桌面 absolute / is-fixed 贴左；右缘=主导航左缘；height auto；禁 float 负 margin */
@media (min-width: 901px) {
  .float-page > .l-nav,
  .l-nav {
    float: none !important;
    position: absolute !important;
    top: 0 !important;
    right: auto !important;
    bottom: auto !important;
    width: calc(100% / 6) !important;
    max-width: 168px;
    min-width: 110px;
    height: auto !important;
    margin: 0 !important;
    z-index: 20 !important;
    /* left 由 l-nav-stick.js：absolute=-navWidth；fixed=wrapLeft-navWidth */
  }
  .float-page > .l-nav.is-fixed,
  .l-nav.is-fixed {
    position: fixed !important;
    top: 0 !important;
    right: auto !important;
  }
  .float-page .hero-stage,
  .hero-stage {
    overflow: hidden;
  }
  .float-page {
    overflow: visible !important;
  }
  .logo img.logo-mark { height: 40px !important; max-width: 220px; }
  .top-promo img.promo-img { height: 40px; max-height: 44px; }
  .float-page .page-below-hero {
    background: #fff;
    border: 1px solid #e6e6e6;
    clear: both;
    position: relative;
    z-index: 1;
  }
}
@media (max-width: 1040px) {
  .wrap { width: 100%; padding: 0 10px; }
  .logo img.logo-mark { height: 44px; width: auto !important; }
  .top-promo .promo-text { font-size: 18px; }
  .top-promo img.promo-img {
  background: transparent; height: 36px; }
  .hotline-num { font-size: 20px; }
}
@media (max-width: 900px) {
  .ppjj, .team-row, .split-grid, .contact-grid, .footer-grid { grid-template-columns: 1fr; }
  .ppjj-news { border-right: 0; border-bottom: 1px solid #eee; }
  .float-page .hero-stage { overflow: visible; }
  .float-page { overflow-x: hidden; } /* 竖菜不伸出视口 */
  .float-page > .l-nav,
  .l-nav {
    position: static !important;
    float: none !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    margin: 0 0 8px !important;
    display: block;
    max-height: none;
    z-index: auto;
    box-shadow: none;
    /* 文档流全宽：在 banner 上方，可点、不挡半屏 */
  }

  .l-nav ul {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    height: auto;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x proximity;
    overscroll-behavior-x: contain;
  }
  .l-nav li {
    display: block;
    flex: 0 0 auto;
    scroll-snap-align: start;
  }
  .l-nav a {
    min-height: 64px;
    min-width: 5.2em;
    max-width: 7.5em;
    padding: 8px 10px;
    border-bottom: 0;
    border-right: 1px solid rgba(255,255,255,.28);
    font-size: 15px; /* 与主导航同号 */
  }
  .l-nav li:last-child a { border-right: 0; }
  .float-page .page-below-hero { padding-left: 0; }
  .slides-box { height: auto; min-height: 180px; }
  .slides-box .banner-img { height: 180px; }
  .page-banner, .page-banner img { height: 120px; }
  .slides-box .banner-fallback { padding: 16px; position: relative; }
  .card-grid, .equip-grid { grid-template-columns: 1fr 1fr; }
  .flow-steps { grid-template-columns: 1fr 1fr; }
  .nav > ul > li > a { font-size: 12px; padding: 10px 2px; }
  .nav ul { flex-wrap: wrap; }
  .nav > ul > li { flex: 1 1 auto; min-width: 4.5em; }
  .nav .sub {
    left: 0;
    right: auto;
    min-width: 180px;
    width: max-content;
    max-width: min(280px, 92vw);
  }
  .city-sel { display: none; }
}
@media (max-width: 640px) {
  .top-bar-inner { flex-wrap: wrap; }
  .top-promo { order: 3; width: 100%; }
  .hotline-num { font-size: 18px; }
  .nav ul { flex-wrap: wrap; }
  .nav > ul > li {
    flex: 1 1 33.33%;
    border-bottom: 1px solid rgba(255,255,255,.15);
  }
  .nav > ul > li > a { white-space: normal; line-height: 1.25; }
  .card-grid, .equip-grid, .adv-bar-fallback, .scene-grid, .fact-grid, .why-grid {
    grid-template-columns: 1fr;
  }
  .book-box .lead-form label { grid-template-columns: 1fr; }
}

/* 页脚优势条：按旧站四栏线框图标复刻（矢量，非截图） */
.footer-adv { background: #f06405; }
.footer-adv .wrap { max-width: 1000px; margin: 0 auto; padding: 0; }
.adv-bar {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  color: #fff;
  text-decoration: none;
  min-height: 68px;
}
.adv-bar article {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px 10px 14px;
  border-right: 1px solid #d45504;
  box-sizing: border-box;
}
.adv-bar article:last-child { border-right: 0; }
.adv-bar .adv-ico-wrap {
  flex: 0 0 42px;
  width: 42px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
}
.adv-bar .adv-ico { width: 100%; height: 100%; display: block; }
.adv-bar div { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.adv-bar strong {
  font-size: 15px;
  font-weight: 700;
  line-height: 1.2;
  color: #fff;
}
.adv-bar span {
  font-size: 13px;
  line-height: 1.2;
  color: #fff;
  opacity: .98;
  font-weight: 400;
}
@media (max-width: 720px) {
  .adv-bar { grid-template-columns: 1fr 1fr; }
  .adv-bar article:nth-child(2) { border-right: 0; }
  .adv-bar article:nth-child(1),
  .adv-bar article:nth-child(2) { border-bottom: 1px solid #d45504; }
}

.footer-adv { background: #f06405; }
.footer-adv .wrap { max-width: 1000px; margin: 0 auto; padding: 0; }
.footer-adv .adv-strip { display: block; line-height: 0; }
.footer-adv .adv-strip img { width: 100%; max-width: 1000px; height: auto; display: block; }
