/*!
 * Mfisp 主题样式表
 * ------------------------------------------------------------------
 * 依赖：tokens.css（变量）。本文件自包含，不依赖任何第三方 CSS
 *       （旧版的 Bootstrap 栅格 + FontAwesome 底座 autoptimize.css 已于
 *       2026-10-28 清理，图标改为模板内联 SVG）。
 * 约定：所有取值引用 tokens 变量；颜色类不写死；暗色主题通过 [data-theme="dark"] 覆写。
 * 命名：区块用小写短名（.header / .hero / .ptable），元素用 BEM 双下划线（.chart__cell）。
 * ------------------------------------------------------------------
 */

/* ============================================================
   1. 基础
   ============================================================ */
*,
*::before,
*::after { box-sizing: border-box; }

html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }

body {
	margin: 0;
	background: var(--paper);
	color: var(--ink);
	font-family: var(--sans);
	font-size: 16px;
	line-height: 1.7;
	-webkit-font-smoothing: antialiased;
	transition: background-color .3s ease, color .3s ease;
}

a { color: inherit; text-decoration: none; transition: color .18s; }
a:hover { color: var(--brand); }
img { max-width: 100%; height: auto; display: block; border: 0; }
h1, h2, h3, h4, h5 { margin: 0; line-height: 1.25; font-weight: 600; }
p { margin: 0; }
ul, ol { margin: 0; padding: 0; list-style: none; }
button { font: inherit; color: inherit; background: none; border: 0; cursor: pointer; }
input, textarea, select { font: inherit; }
table { border-collapse: collapse; }
::selection { background: var(--brand); color: var(--on-brand); }

/* 键盘可达性：只在键盘聚焦时显示焦点环 */
:focus-visible { outline: 2px solid var(--brand); outline-offset: 2px; }

.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;
}

/* 无 JS 时的兜底 */
.no-js .theme-btn { display: none; }

/* ============================================================
   2. 版心与区块
   ============================================================ */
.wrap { max-width: var(--w); margin: 0 auto; padding: 0 24px; }

.sec { padding: 80px 0; }
.sec--tight { padding: 56px 0; }
.sec--band {
	background: var(--surface-2);
	border-top: 1px solid var(--line);
	border-bottom: 1px solid var(--line);
}

/* 区块标题：左对齐 + 序号编号，与 Scmsky 的居中标题刻意区分 */
.sec-head {
	display: flex; align-items: flex-end; justify-content: space-between;
	gap: 32px; margin-bottom: 40px;
}
.sec-head__main { max-width: 740px; }
.kicker {
	display: inline-flex; align-items: center; gap: 10px;
	font-size: 12px; letter-spacing: .18em; text-transform: uppercase;
	color: var(--brand); font-weight: 600; margin-bottom: 14px;
}
.kicker::before { content: ""; width: 22px; height: 1px; background: var(--brand); }
.sec-title { font-family: var(--serif); font-size: 34px; letter-spacing: .01em; color: var(--ink); }
.sec-sub { margin-top: 12px; color: var(--ink-3); font-size: 15px; max-width: 620px; }
.sec-link {
	flex: none; display: inline-flex; align-items: center; gap: 8px;
	font-size: 14px; color: var(--brand); font-weight: 600;
	border-bottom: 1px solid transparent; padding-bottom: 2px;
}
.sec-link:hover { border-color: var(--brand); }
.sec-link svg { width: 14px; height: 14px; }

/* ============================================================
   3. 按钮
   ============================================================ */
.btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px;
	height: 46px; padding: 0 24px; border-radius: var(--r);
	font-size: 15px; font-weight: 600; letter-spacing: .02em; line-height: 1;
	border: 1px solid transparent; white-space: nowrap;
	transition: background .18s, color .18s, border-color .18s;
}
.btn--primary { background: var(--brand); color: var(--on-brand); border-color: var(--brand); }
.btn--primary:hover { background: var(--brand-deep); border-color: var(--brand-deep); color: var(--on-brand); }
.btn--ghost { border-color: var(--line-strong); color: var(--ink); }
.btn--ghost:hover { border-color: var(--ink); background: var(--surface); color: var(--ink); }
.btn--accent { background: var(--accent); color: #fff; border-color: var(--accent); }
.btn--accent:hover { filter: brightness(.94); color: #fff; }
.btn--sm { height: 34px; padding: 0 14px; font-size: 13px; }
.btn--block { display: flex; width: 100%; }
.btn--onhero { border-color: rgba(242, 247, 245, .42); color: var(--hero-ink); }
.btn--onhero:hover { background: rgba(242, 247, 245, .12); border-color: var(--hero-ink); color: #fff; }
/* 暗色下页头主按钮改半透明底，避免整块亮色刺眼 */
[data-theme="dark"] .header .btn--primary {
	background: rgba(79, 191, 168, .14); color: var(--brand); border-color: rgba(79, 191, 168, .42);
}
[data-theme="dark"] .header .btn--primary:hover { background: var(--brand); color: var(--on-brand); }

/* ============================================================
   4. 顶部信息条 + 页头
   ============================================================ */
.topbar {
	background: var(--brand-deep); color: #DCEAE6; font-size: 12.5px;
	border-bottom: 1px solid rgba(255, 255, 255, .06);
}
[data-theme="dark"] .topbar { background: #08110E; color: #9FB8B1; }
.topbar__in { display: flex; align-items: center; justify-content: space-between; height: var(--topbar-h); gap: 16px; }
.topbar__list { display: flex; align-items: center; gap: 22px; min-width: 0; }
.topbar__list span { display: inline-flex; align-items: center; gap: 7px; white-space: nowrap; }
.topbar__list svg { width: 13px; height: 13px; opacity: .85; flex: none; }
.topbar__list a:hover { color: #fff; }
.topbar__right { display: flex; align-items: center; gap: 16px; flex: none; }
.topbar__right a:hover { color: #fff; }

.header {
	position: sticky; top: 0; z-index: 60;
	background: var(--surface); border-bottom: 1px solid var(--line);
	transition: background-color .3s, border-color .3s;
}
.admin-bar .header { top: 32px; }
.header__in { display: flex; align-items: center; justify-content: space-between; gap: 20px; height: var(--header-h); }

.logo { display: flex; align-items: center; gap: 11px; flex: none; }
/* 内联 SVG 标志：高度固定，宽度按 viewBox 比例自适应；颜色随主题变量切换 */
.logo__svg { height: 36px; width: auto; display: block; }
/* 后台填写的是图片 logo 时不再叠加文字 */
.logo img { max-height: 42px; width: auto; }

/* 导航：WP 菜单默认输出 .menu-item / .sub-menu */
.nav-wrap { margin-left: auto; }
.nav { display: flex; align-items: center; gap: 2px; }
.nav > li { position: relative; flex: none; }
.nav > li > a {
	display: inline-flex; align-items: center; height: var(--header-h); padding: 0 8px;
	font-size: 14.5px; color: var(--ink-2); font-weight: 500; white-space: nowrap;
	border-bottom: 2px solid transparent; margin-bottom: -1px;
	transition: color .18s, border-color .18s;
}
.nav > li > a:hover { color: var(--brand); }
.nav > li.current-menu-item > a,
.nav > li.current-menu-ancestor > a,
.nav > li.current_page_item > a,
.nav > li.is-active > a { color: var(--brand); border-color: var(--brand); font-weight: 600; }
/* 下拉箭头用 CSS 三角，免去 Walker 输出图标 */
.nav > li.menu-item-has-children > a::after {
	content: ""; width: 0; height: 0; margin-left: 6px;
	border-left: 4px solid transparent; border-right: 4px solid transparent;
	border-top: 5px solid currentColor; opacity: .55;
}
.nav .sub-menu {
	position: absolute; top: 100%; left: 0; min-width: 196px; padding: 8px;
	background: var(--surface); border: 1px solid var(--line); box-shadow: var(--shadow-md);
	opacity: 0; visibility: hidden; transform: translateY(-6px); transition: .18s; z-index: 10;
}
.nav > li:hover > .sub-menu,
.nav > li:focus-within > .sub-menu { opacity: 1; visibility: visible; transform: none; }
.nav .sub-menu a { display: block; padding: 10px 12px; font-size: 14px; color: var(--ink-2); border-radius: var(--r); }
.nav .sub-menu a:hover { background: var(--brand-soft); color: var(--brand); }
.nav .sub-menu .sub-menu { top: 0; left: 100%; }

.header__act { display: flex; align-items: center; gap: 10px; flex: none; }
.hotline { display: flex; flex-direction: column; line-height: 1.2; text-align: right; margin-right: 4px; }
/* 热线仅在 ≥1920 的宽屏参与页头布局（顶栏已有电话入口），其余宽度让位给主导航 */
@media (max-width: 1919px) { .hotline { display: none; } }
.hotline small { font-size: 11px; color: var(--ink-3); letter-spacing: .04em; }
.hotline b { font-size: 17px; font-family: var(--mono); letter-spacing: .02em; color: var(--ink); }

/* 主题开关 */
.theme-btn {
	width: 38px; height: 38px; display: grid; place-items: center;
	border: 1px solid var(--line-strong); border-radius: var(--r); color: var(--ink-2);
	transition: .18s;
}
.theme-btn:hover { border-color: var(--brand); color: var(--brand); background: var(--brand-soft); }
.theme-btn svg { width: 17px; height: 17px; }
.theme-btn .moon { display: none; }
[data-theme="dark"] .theme-btn .sun { display: none; }
[data-theme="dark"] .theme-btn .moon { display: block; }

.burger {
	display: none; width: 40px; height: 40px; place-items: center;
	border: 1px solid var(--line-strong); border-radius: var(--r);
}
.burger span { display: block; width: 16px; height: 1.5px; background: var(--ink); position: relative; }
.burger span::before,
.burger span::after { content: ""; position: absolute; left: 0; width: 16px; height: 1.5px; background: var(--ink); }
.burger span::before { top: -5px; }
.burger span::after { top: 5px; }

/* ============================================================
   5. Hero：图片轮播（幻灯片数据只有图片 + 链接 + 标题）
   ============================================================ */
.hero { position: relative; background: var(--hero-a); overflow: hidden; }
.hero__slides { position: relative; display: grid; min-height: 520px; }

.slide {
	grid-area: 1 / 1;
	position: relative; display: flex; align-items: center;
	opacity: 0; visibility: hidden; transition: opacity .7s ease;
}
.slide.is-on { opacity: 1; visibility: visible; }

/* 图片铺满并压暗，保证标题可读 */
.slide__media { position: absolute; inset: 0; overflow: hidden; }
.slide__media img { width: 100%; height: 100%; object-fit: cover; }
.slide__media::after {
	content: ""; position: absolute; inset: 0;
	background:
		linear-gradient(100deg, rgba(6, 26, 22, .92) 6%, rgba(8, 34, 29, .74) 42%, rgba(10, 45, 38, .28) 72%, rgba(10, 45, 38, .06) 100%),
		radial-gradient(900px 420px at 82% 12%, rgba(79, 191, 168, .18), transparent 62%);
}
/* 无图片时用纯色 + 网格纹理兜底 */
.slide--plain .slide__media::before {
	content: ""; position: absolute; inset: 0;
	background: linear-gradient(118deg, var(--hero-a) 8%, var(--hero-b) 58%, #0D5548 100%);
}
.slide--plain .slide__media::after {
	background-image:
		linear-gradient(rgba(160, 220, 205, .07) 1px, transparent 1px),
		linear-gradient(90deg, rgba(160, 220, 205, .07) 1px, transparent 1px);
	background-size: 64px 64px;
	-webkit-mask-image: linear-gradient(105deg, transparent 34%, #000 82%);
	        mask-image: linear-gradient(105deg, transparent 34%, #000 82%);
}

.slide__inner {
	position: relative; z-index: 2; width: 100%; max-width: var(--w);
	margin: 0 auto; padding: 96px 24px 104px;
	display: grid; grid-template-columns: minmax(0, 1fr) 316px; gap: 52px; align-items: center;
}
.slide__inner--solo { grid-template-columns: minmax(0, 1fr); }
.slide__kicker {
	display: inline-flex; align-items: center; gap: 10px;
	font-size: 12px; letter-spacing: .2em; text-transform: uppercase;
	color: #7FD8C4; font-weight: 600; margin-bottom: 18px;
}
.slide__kicker::before { content: ""; width: 26px; height: 1px; background: #7FD8C4; }
.slide__title {
	font-family: var(--serif); font-size: 46px; line-height: 1.22;
	color: var(--hero-ink); letter-spacing: .01em; font-weight: 600;
	max-width: 720px;
}
.slide__desc { margin-top: 18px; color: var(--hero-ink-2); font-size: 16px; max-width: 540px; line-height: 1.85; }
.slide__btns { display: flex; gap: 12px; margin-top: 32px; flex-wrap: wrap; }

/* 右侧数据卡 */
.datacard {
	border: 1px solid rgba(160, 220, 205, .22); background: rgba(9, 32, 27, .46);
	backdrop-filter: blur(6px); padding: 24px;
}
.datacard__hd {
	display: flex; align-items: center; justify-content: space-between;
	font-size: 12px; letter-spacing: .14em; text-transform: uppercase;
	color: #8FBDB2; margin-bottom: 18px;
}
.datacard__dot { display: inline-flex; align-items: center; gap: 7px; }
.datacard__dot i {
	width: 6px; height: 6px; border-radius: 50%; background: #5FE0BE;
	box-shadow: 0 0 0 3px rgba(95, 224, 190, .18); animation: mf-pulse 2.4s infinite;
}
@keyframes mf-pulse { 0%, 100% { opacity: 1; } 50% { opacity: .35; } }
.datacard__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; background: rgba(160, 220, 205, .16); }
.datacard__cell { background: #0A2621; padding: 15px 13px; }
.datacard__cell b { display: block; font-family: var(--mono); font-size: 25px; color: #EDF7F3; letter-spacing: -.01em; }
.datacard__cell b small { font-size: 12px; color: #8FBDB2; margin-left: 3px; font-family: var(--sans); }
.datacard__cell span { display: block; margin-top: 5px; font-size: 12px; color: #8FBDB2; letter-spacing: .03em; }

/* 轮播控制 */
.hero__ctrl { position: absolute; left: 0; right: 0; bottom: 0; z-index: 3; }
.hero__ctrl-in { display: flex; align-items: center; justify-content: space-between; padding-bottom: 24px; }
.dots { display: flex; gap: 8px; }
.dots button { width: 26px; height: 2px; background: rgba(242, 247, 245, .28); transition: .2s; }
.dots button.is-on { background: #8FE3CE; width: 40px; }
.arrows { display: flex; gap: 8px; }
.arrows button {
	width: 38px; height: 38px; display: grid; place-items: center;
	border: 1px solid rgba(242, 247, 245, .28); color: var(--hero-ink); transition: .18s;
}
.arrows button:hover { background: rgba(242, 247, 245, .14); }
.arrows svg { width: 15px; height: 15px; }

/* 公告 + 搜索（对应原 index-notice-search） */
.notice-bar { position: relative; z-index: 5; background: var(--surface); border-bottom: 1px solid var(--line); }
.notice-bar__in { display: flex; align-items: center; gap: 20px; height: 68px; }
.notice { display: flex; align-items: center; gap: 12px; flex: 1; min-width: 0; }
.notice__tag {
	flex: none; display: inline-flex; align-items: center; gap: 6px;
	background: var(--accent-soft); color: var(--accent);
	font-size: 11.5px; font-weight: 700; letter-spacing: .08em; padding: 4px 9px; border-radius: var(--r);
}
.notice__tag i { width: 5px; height: 5px; border-radius: 50%; background: var(--accent); }
.notice__txt { font-size: 14px; color: var(--ink-2); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.notice__txt:hover { color: var(--brand); }
.searchbox { display: flex; align-items: center; flex: none; width: 360px; border-left: 1px solid var(--line); padding-left: 18px; }
.searchbox input[type="text"] {
	flex: 1; height: 44px; border: 0; background: none; color: var(--ink); font-size: 14px; outline: none;
}
.searchbox input::placeholder { color: var(--ink-3); }
.searchbox button { width: 44px; height: 44px; display: grid; place-items: center; color: var(--brand); }
.searchbox svg { width: 18px; height: 18px; }

/* ============================================================
   6. 产品分类入口（原 swiper 轮播 → 栅格，数量自适应）
   ============================================================ */
.cats {
	display: grid; grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 1px; background: var(--line); border: 1px solid var(--line);
}
.cats--auto { grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); }
.cat {
	background: var(--surface); padding: 26px 20px;
	display: flex; flex-direction: column; gap: 14px; position: relative;
	transition: background .2s;
}
.cat:hover { background: var(--brand-soft); }
.cat__icon { width: 40px; height: 40px; color: var(--brand); }
.cat__icon img { width: 100%; height: 100%; object-fit: contain; }
.cat__name { font-size: 16px; font-weight: 600; color: var(--ink); display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.cat__name svg { width: 12px; height: 12px; color: var(--brand); opacity: 0; transform: translateX(-4px); transition: .2s; flex: none; }
.cat:hover .cat__name svg { opacity: 1; transform: none; }
.cat__meta { font-size: 12.5px; color: var(--ink-3); font-family: var(--mono); letter-spacing: .02em; }

/* ============================================================
   7. 价格表（核心区块）
   ============================================================ */
.price-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 28px; margin-bottom: 24px; flex-wrap: wrap; }
.price-note { display: flex; align-items: center; gap: 18px; font-size: 13px; color: var(--ink-3); flex-wrap: wrap; }
.price-note span { display: inline-flex; align-items: center; gap: 6px; }
.price-note svg { width: 13px; height: 13px; color: var(--brand); flex: none; }

.tabs { display: flex; border-bottom: 1px solid var(--line); }
.tabs button,
.tabs a {
	padding: 14px 22px; font-size: 14.5px; color: var(--ink-3); font-weight: 500;
	border-bottom: 2px solid transparent; margin-bottom: -1px; transition: .18s; white-space: nowrap;
}
.tabs button:hover,
.tabs a:hover { color: var(--ink); }
.tabs .is-on { color: var(--brand); border-color: var(--brand); font-weight: 600; }

.tablewrap {
	background: var(--surface); border: 1px solid var(--line);
	overflow-x: auto; -webkit-overflow-scrolling: touch;
}
.tabs + .tablewrap { border-top: 0; }
.table-hint { display: none; align-items: center; gap: 8px; margin: 12px 0 0; font-size: 12.5px; color: var(--ink-3); }
.table-hint svg { width: 14px; height: 14px; color: var(--brand); flex: none; }

.ptable { width: 100%; min-width: 960px; font-size: 13.5px; }
.ptable th {
	text-align: left; font-weight: 600; font-size: 12px; letter-spacing: .1em; text-transform: uppercase;
	color: var(--ink-3); padding: 14px; background: var(--surface-2);
	border-bottom: 1px solid var(--line); white-space: nowrap;
}
.ptable th.c-act { text-align: right; }
.ptable td { padding: 15px 14px; border-bottom: 1px solid var(--line); color: var(--ink-2); white-space: nowrap; }
.ptable tbody tr { background: var(--surface); transition: background .15s; }
.ptable tbody tr:nth-child(even) { background: var(--surface-2); }
[data-theme="dark"] .ptable tbody tr:nth-child(even) { background: var(--surface-3); }
.ptable tbody tr:hover { background: var(--brand-soft); }
.ptable tbody tr:last-child td { border-bottom: 0; }
.ptable .c-no span { display: none; }
.ptable .c-no a { font-family: var(--mono); font-weight: 600; color: var(--brand); border-bottom: 1px solid transparent; }
.ptable .c-no a:hover { border-color: var(--brand); }
.ptable .c-spec b { color: var(--ink); font-weight: 600; }
.ptable .c-price { font-family: var(--mono); font-size: 18px; font-weight: 600; color: var(--accent); letter-spacing: -.01em; }
.ptable .c-price small { font-size: 11px; color: var(--ink-3); font-family: var(--sans); font-weight: 400; margin-left: 1px; }
.ptable .c-act { text-align: right; padding-right: 16px; }
/* 表格内 CTA 用描边款：本站在线询价而非下单 */
.ptable .btn--primary { background: transparent; border-color: var(--brand); color: var(--brand); }
.ptable .btn--primary:hover { background: var(--brand); color: var(--on-brand); }
.ptable .badge {
	display: inline-block; margin-left: 8px; padding: 1px 6px; font-size: 10.5px;
	letter-spacing: .04em; border: 1px solid var(--brand); color: var(--brand);
	border-radius: var(--r); vertical-align: 1px; font-weight: 600;
}
.ptable .badge--hot { border-color: var(--accent); color: var(--accent); }
.table-foot {
	display: flex; align-items: center; justify-content: space-between; gap: 16px;
	padding: 14px 18px; background: var(--surface-2); border: 1px solid var(--line); border-top: 0;
	font-size: 12.5px; color: var(--ink-3); flex-wrap: wrap;
}
.table-foot a { color: var(--brand); font-weight: 600; }

/* 空状态 */
.empty-note {
	padding: 28px; text-align: center; font-size: 14px; color: var(--ink-3);
	background: var(--surface-2); border: 1px dashed var(--line-strong);
}

/* ============================================================
   8. 面包屑 / 内页页头
   ============================================================ */
.crumb { background: var(--surface); border-bottom: 1px solid var(--line); font-size: 13px; color: var(--ink-3); }
.crumb__in { display: flex; align-items: center; gap: 8px; min-height: 46px; flex-wrap: wrap; }
.crumb a { color: var(--ink-3); }
.crumb a:hover { color: var(--brand); }
.crumb span.sep { color: var(--line-strong); }
.crumb b { color: var(--ink-2); font-weight: 500; }

.page-hero { position: relative; background: var(--hero-a); color: var(--hero-ink); overflow: hidden; }
.page-hero::before {
	content: ""; position: absolute; inset: 0;
	background:
		linear-gradient(118deg, var(--hero-a) 8%, var(--hero-b) 62%, #0D5548 100%),
		radial-gradient(900px 420px at 84% 10%, rgba(79, 191, 168, .22), transparent 62%);
}
.page-hero::after {
	content: ""; position: absolute; inset: 0; opacity: .45;
	background-image:
		linear-gradient(rgba(160, 220, 205, .09) 1px, transparent 1px),
		linear-gradient(90deg, rgba(160, 220, 205, .09) 1px, transparent 1px);
	background-size: 62px 62px;
	-webkit-mask-image: linear-gradient(105deg, transparent 46%, #000 84%);
	        mask-image: linear-gradient(105deg, transparent 46%, #000 84%);
}
.page-hero__in {
	position: relative; z-index: 2;
	display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 52px; align-items: center;
	padding-top: 52px; padding-bottom: 56px;
}
.page-hero__kicker { font-size: 12px; letter-spacing: .2em; text-transform: uppercase; color: #7FD8C4; font-weight: 600; margin-bottom: 14px; }
.page-hero__title { font-family: var(--serif); font-size: 42px; line-height: 1.2; color: var(--hero-ink); }
.page-hero__desc { margin-top: 16px; color: var(--hero-ink-2); font-size: 15.5px; line-height: 1.9; max-width: 640px; }
.page-hero__tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 22px; }
.page-hero__tags span {
	display: inline-flex; align-items: center; gap: 6px; font-size: 12.5px; color: #BFDCD3;
	border: 1px solid rgba(160, 220, 205, .26); padding: 4px 10px; border-radius: var(--r);
}
.page-hero__tags svg { width: 12px; height: 12px; color: #8FE3CE; }
/* 右侧 2×2 数据格 */
.hstats { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; background: rgba(160, 220, 205, .18); border: 1px solid rgba(160, 220, 205, .22); }
.hstats__cell { background: rgba(9, 32, 27, .55); padding: 18px 16px; }
.hstats__cell b { display: block; font-family: var(--mono); font-size: 24px; color: #EDF7F3; }
.hstats__cell b small { font-size: 12px; color: #8FBDB2; margin-left: 3px; font-family: var(--sans); }
.hstats__cell span { display: block; margin-top: 5px; font-size: 12px; color: #8FBDB2; }

/* 产品线横向切换条 */
.line-nav { background: var(--surface); border-bottom: 1px solid var(--line); }
.line-nav__in { display: flex; align-items: center; gap: 4px; min-height: 54px; overflow-x: auto; -webkit-overflow-scrolling: touch; scrollbar-width: none; }
.line-nav__in::-webkit-scrollbar { display: none; }
.line-nav a {
	flex: none; padding: 6px 14px; font-size: 14px; color: var(--ink-2);
	border-bottom: 2px solid transparent; transition: .18s; white-space: nowrap;
}
.line-nav a:hover { color: var(--brand); }
.line-nav a.is-on { color: var(--brand); border-color: var(--brand); font-weight: 600; }
.line-nav .line-nav__all { margin-left: auto; color: var(--brand); font-weight: 600; }

/* ============================================================
   9. 通用内容网格
   ============================================================ */
.split { display: grid; grid-template-columns: minmax(0, 1fr) 336px; gap: 56px; align-items: start; }
.split--aside { grid-template-columns: minmax(0, 1fr) 340px; }
.split__body { min-width: 0; }
.split__side { min-width: 0; }

/* 企业优势 */
.about__grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 64px; align-items: start; }
.about__lead { font-family: var(--serif); font-size: 26px; line-height: 1.55; color: var(--ink); margin-bottom: 18px; }
.about__text { color: var(--ink-3); font-size: 15px; line-height: 1.9; }
.about__btns { display: flex; gap: 12px; margin-top: 28px; flex-wrap: wrap; }
.about__stats { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; background: var(--line); border: 1px solid var(--line); margin-top: 32px; }
.stat { background: var(--surface); padding: 22px 20px; }
.stat b { font-family: var(--mono); font-size: 28px; color: var(--brand); display: block; letter-spacing: -.02em; }
.stat b small { font-size: 13px; color: var(--ink-3); margin-left: 2px; font-family: var(--sans); }
.stat span { display: block; font-size: 13px; color: var(--ink-3); margin-top: 4px; }
.feats { display: grid; grid-template-columns: 1fr 1fr; gap: 28px 32px; }
.feat { display: flex; gap: 16px; padding-bottom: 26px; border-bottom: 1px solid var(--line); }
.feat__n { font-family: var(--mono); font-size: 12px; color: var(--brand); letter-spacing: .06em; flex: none; padding-top: 4px; }
.feat__icon { flex: none; width: 30px; height: 30px; color: var(--brand); }
.feat__icon img { width: 100%; height: 100%; object-fit: contain; }
.feat h4 { font-size: 16px; margin-bottom: 7px; color: var(--ink); }
.feat p { font-size: 13.5px; color: var(--ink-3); line-height: 1.75; }

/* 解决方案 */
.sol__tabs { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 28px; }
.sol__tabs button,
.sol__tabs a {
	padding: 9px 18px; font-size: 13.5px; color: var(--ink-2);
	border: 1px solid var(--line-strong); border-radius: var(--r); transition: .18s;
}
.sol__tabs button:hover,
.sol__tabs a:hover { border-color: var(--brand); color: var(--brand); }
.sol__tabs .is-on { background: var(--brand); border-color: var(--brand); color: var(--on-brand); font-weight: 600; }
.sol__panel { display: none; }
.sol__panel.is-on { display: block; }
.sol__body h3 { font-family: var(--serif); font-size: 26px; margin-bottom: 14px; }
.sol__body p { color: var(--ink-2); font-size: 14.5px; line-height: 1.95; }
.sol__btns { display: flex; gap: 12px; margin-top: 26px; flex-wrap: wrap; }

/* 新闻 */
.news__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; }
.news__col h3 {
	display: flex; align-items: center; justify-content: space-between;
	font-size: 17px; padding-bottom: 14px; border-bottom: 1px solid var(--line-strong); margin-bottom: 4px;
}
.news__col h3 a { font-size: 12.5px; font-weight: 500; color: var(--ink-3); display: inline-flex; align-items: center; gap: 5px; }
.news__col h3 a:hover { color: var(--brand); }
.news__col h3 a svg { width: 12px; height: 12px; }
.news-item { display: flex; gap: 16px; padding: 18px 0; border-bottom: 1px solid var(--line); align-items: flex-start; }
.news-item:last-child { border-bottom: 0; }
.news-item__date { flex: none; width: 64px; text-align: center; border-right: 1px solid var(--line); padding-right: 14px; }
.news-item__date b { display: block; font-family: var(--mono); font-size: 22px; color: var(--ink); line-height: 1.1; }
.news-item__date span { display: block; font-size: 10px; color: var(--ink-3); font-family: var(--mono); white-space: nowrap; letter-spacing: -.02em; margin-top: 2px; }
.news-item h4 { font-size: 15px; line-height: 1.55; margin-bottom: 6px; transition: color .18s; }
.news-item:hover h4 { color: var(--brand); }
.news-item p { font-size: 13px; color: var(--ink-3); line-height: 1.7; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }

/* 卡片列表（文章 / 产品） */
.cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.card {
	border: 1px solid var(--line); background: var(--surface);
	display: flex; flex-direction: column; transition: border-color .2s, transform .2s;
}
.card:hover { border-color: var(--line-strong); }
.card__thumb { aspect-ratio: 16 / 9; overflow: hidden; background: var(--surface-2); }
.card__thumb img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
.card:hover .card__thumb img { transform: scale(1.03); }
.card__body { padding: 18px 20px 20px; display: flex; flex-direction: column; gap: 8px; flex: 1; }
.card__meta { font-size: 12px; color: var(--ink-3); font-family: var(--mono); letter-spacing: .02em; }
.card__title { font-size: 16px; line-height: 1.55; color: var(--ink); }
.card:hover .card__title { color: var(--brand); }
.card__desc { font-size: 13px; color: var(--ink-3); line-height: 1.75; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.card__foot {
	display: flex; align-items: center; justify-content: space-between; gap: 10px;
	margin-top: auto; padding-top: 14px; border-top: 1px solid var(--line);
}
.card__price { font-family: var(--mono); font-size: 18px; font-weight: 600; color: var(--accent); }
.card__price small { font-size: 11px; color: var(--ink-3); font-family: var(--sans); font-weight: 400; }
.card__link { font-size: 12.5px; color: var(--brand); font-weight: 600; display: inline-flex; align-items: center; gap: 4px; white-space: nowrap; }
.card__link svg { width: 11px; height: 11px; flex: none; }

/* 规格 / FAQ / 服务 */
.notes { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; background: var(--line); border: 1px solid var(--line); border-top: 0; }
.notes__item { background: var(--surface-2); padding: 18px 20px; }
.notes__item h5 { font-size: 13px; color: var(--ink); margin-bottom: 6px; }
.notes__item p { font-size: 12.5px; color: var(--ink-3); line-height: 1.8; }

.faq { border: 1px solid var(--line); background: var(--surface); }
.faq__item { border-bottom: 1px solid var(--line); }
.faq__item:last-child { border-bottom: 0; }
.faq__q {
	display: flex; align-items: flex-start; gap: 12px; width: 100%; text-align: left;
	padding: 18px 20px; font-size: 15px; font-weight: 600; color: var(--ink);
}
.faq__q i { font-style: normal; font-family: var(--mono); font-size: 12px; color: var(--brand); padding-top: 3px; flex: none; }
.faq__q::after { content: "+"; margin-left: auto; color: var(--brand); font-weight: 400; font-size: 18px; line-height: 1; }
.faq__item.is-open .faq__q::after { content: "−"; }
.faq__a { display: none; padding: 0 20px 20px 44px; font-size: 14px; color: var(--ink-3); line-height: 1.9; }
.faq__item.is-open .faq__a { display: block; }

.svc { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.svc__item { border: 1px solid var(--line); background: var(--surface); padding: 22px; }
.svc__icon { width: 28px; height: 28px; color: var(--brand); margin-bottom: 12px; }
.svc__item h4 { font-size: 15px; margin-bottom: 6px; }
.svc__item p { font-size: 13px; color: var(--ink-3); line-height: 1.8; }

/* ============================================================
   10. 文章 / 单页正文
   ============================================================ */
.art { background: var(--surface); }
.art__hd { padding: 40px 0 28px; border-bottom: 1px solid var(--line); }
.art__title { font-family: var(--serif); font-size: 34px; line-height: 1.35; color: var(--ink); }
.art__meta { display: flex; flex-wrap: wrap; gap: 18px; margin-top: 16px; font-size: 12.5px; color: var(--ink-3); }
.art__meta span { display: inline-flex; align-items: center; gap: 6px; }
.art__meta svg { width: 13px; height: 13px; }
.art__nav {
	display: flex; justify-content: space-between; gap: 20px; flex-wrap: wrap;
	padding: 18px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line);
	font-size: 13.5px; color: var(--ink-3);
}
.art__nav a { color: var(--ink-2); }
.art__nav a:hover { color: var(--brand); }

/* 正文排版：与前台阅读一致的 720px 栏宽 */
.entry {
	padding: 32px 0 48px; font-size: 16.5px; line-height: 1.95; color: var(--ink-2);
	overflow-wrap: break-word; word-break: break-word;
}
.entry > * + * { margin-top: 1.1em; }
.entry h2, .entry h3, .entry h4 { font-family: var(--serif); color: var(--ink); margin-top: 1.8em; }
.entry h2 { font-size: 24px; }
.entry h3 { font-size: 20px; }
.entry h4 { font-size: 17px; }
.entry a { color: var(--brand); border-bottom: 1px solid var(--brand-soft); }
.entry a:hover { border-color: var(--brand); }
.entry ul, .entry ol { padding-left: 1.4em; }
.entry ul { list-style: square; }
.entry ol { list-style: decimal; }
.entry li + li { margin-top: .4em; }
.entry blockquote {
	margin: 1.6em 0; padding: 4px 0 4px 20px;
	border-left: 2px solid var(--accent); color: var(--ink-2); font-family: var(--serif); font-size: 17px;
}
.entry img { margin: 1.4em auto; }
.entry figure { margin: 1.6em 0; }
.entry figcaption { text-align: center; font-size: 12.5px; color: var(--ink-3); margin-top: 8px; }
.entry table { width: 100%; font-size: 14px; margin: 1.6em 0; }
.entry table th, .entry table td { border: 1px solid var(--line); padding: 10px 12px; text-align: left; }
.entry table th { background: var(--surface-2); font-weight: 600; color: var(--ink); }
.entry pre { background: var(--surface-2); border: 1px solid var(--line); padding: 16px; overflow-x: auto; font-size: 13px; }
.entry code { font-family: var(--mono); font-size: .92em; background: var(--surface-2); padding: 2px 5px; border-radius: var(--r); }
.entry pre code { background: none; padding: 0; }

/* 侧栏 */
.aside { display: flex; flex-direction: column; gap: 24px; position: sticky; top: calc(var(--header-h) + 20px); }
.admin-bar .aside { top: calc(var(--header-h) + 52px); }
.widget { border: 1px solid var(--line); background: var(--surface); padding: 20px; }
.widget-title, .widget h3 {
	font-size: 13px; letter-spacing: .12em; text-transform: uppercase; color: var(--ink-3);
	font-weight: 600; margin: 0 0 14px; padding-bottom: 12px; border-bottom: 1px solid var(--line);
}
.widget ul li { display: flex; gap: 10px; padding: 10px 0; border-bottom: 1px dashed var(--line); font-size: 14px; color: var(--ink-2); line-height: 1.6; }
.widget ul li:last-child { border-bottom: 0; padding-bottom: 0; }
.widget ul li a:hover { color: var(--brand); }
.widget ul li .n { flex: none; font-family: var(--mono); font-size: 12px; color: var(--brand); padding-top: 2px; }
.widget ul li .cnt { margin-left: auto; color: var(--ink-3); font-family: var(--mono); font-size: 12px; }
.widget img { max-width: 100%; }

/* 咨询卡（深色） */
.consult { background: linear-gradient(150deg, var(--brand-deep), #0B3A32); color: #EAF4F1; padding: 22px; }
[data-theme="dark"] .consult { background: linear-gradient(150deg, #0A1F1A, #0D3129); border: 1px solid var(--line); }
.consult h4 { font-family: var(--serif); font-size: 19px; color: #fff; margin-bottom: 8px; }
.consult p { font-size: 13px; color: #A9C6BE; line-height: 1.8; }
.consult__tel { display: block; margin-top: 14px; font-family: var(--mono); font-size: 22px; color: #8FE3CE; }
.consult__btns { display: flex; flex-direction: column; gap: 10px; margin-top: 16px; }
.consult .btn--primary { background: #8FE3CE; color: #06241E; border-color: #8FE3CE; }
.consult .btn--primary:hover { background: #fff; border-color: #fff; color: #06241E; }
.consult .btn--ghost { border-color: rgba(234, 244, 241, .35); color: #EAF4F1; }
.consult .btn--ghost:hover { background: rgba(234, 244, 241, .12); border-color: #EAF4F1; color: #fff; }

/* 侧栏产品小卡 */
.mini-card { display: flex; gap: 12px; padding: 12px 0; border-bottom: 1px dashed var(--line); align-items: center; }
.mini-card:last-child { border-bottom: 0; }
.mini-card__body { min-width: 0; }
.mini-card__name { font-size: 13.5px; color: var(--ink); font-weight: 600; }
.mini-card__spec { font-size: 12px; color: var(--ink-3); margin-top: 3px; }
.mini-card__price { margin-left: auto; font-family: var(--mono); font-size: 14px; color: var(--accent); white-space: nowrap; }

/* ============================================================
   11. 产品详情页
   ============================================================ */
.phead { background: var(--surface); border-bottom: 1px solid var(--line); }
.phead__in {
	display: grid; grid-template-columns: minmax(0, 1fr) 336px; gap: 56px; align-items: start;
	padding-top: 38px; padding-bottom: 44px;
}
.phead__line { font-size: 12.5px; letter-spacing: .1em; text-transform: uppercase; color: var(--brand); font-weight: 600; margin-bottom: 12px; }
.phead__title { font-family: var(--serif); font-size: 34px; line-height: 1.3; color: var(--ink); }
.phead__sub { margin-top: 12px; font-size: 13px; color: var(--ink-3); font-family: var(--mono); display: flex; flex-wrap: wrap; gap: 8px 16px; }
.phead__tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 18px; }
.phead__tags span,
.phead__tags a {
	display: inline-flex; align-items: center; gap: 6px; font-size: 12.5px; color: var(--ink-2);
	background: var(--surface-2); border: 1px solid var(--line); padding: 4px 10px; border-radius: var(--r);
}
.phead__tags a:hover { border-color: var(--brand); color: var(--brand); }
.phead__tags svg { width: 12px; height: 12px; color: var(--brand); }
.phead__quick { display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px; margin-top: 28px; padding-top: 22px; border-top: 1px solid var(--line); }
.phead__quick span { display: block; font-size: 11.5px; letter-spacing: .1em; text-transform: uppercase; color: var(--ink-3); margin-bottom: 6px; }
.phead__quick b { font-size: 15.5px; color: var(--ink); font-family: var(--mono); letter-spacing: -.01em; font-weight: 600; }

/* 报价卡 */
.pcard { border: 1px solid var(--line); background: var(--surface-2); padding: 24px; }
.pcard__label { font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--ink-3); }
.pcard__price { margin-top: 8px; display: flex; align-items: baseline; gap: 4px; font-family: var(--mono); color: var(--accent); }
.pcard__price i { font-style: normal; font-size: 18px; font-weight: 600; }
.pcard__price b { font-size: 38px; font-weight: 600; letter-spacing: -.02em; line-height: 1; }
.pcard__price small { font-size: 12.5px; color: var(--ink-3); font-family: var(--sans); margin-left: 4px; }
.pcard__year { margin-top: 8px; font-size: 12.5px; color: var(--brand); }
.pcard__btns { display: flex; flex-direction: column; gap: 10px; margin-top: 18px; }
.pcard__btns .btn--ghost { background: var(--surface); border-color: var(--line-strong); }
.pcard__note { display: flex; gap: 7px; margin-top: 14px; font-size: 12px; color: var(--ink-3); line-height: 1.7; }
.pcard__note svg { width: 13px; height: 13px; flex: none; margin-top: 3px; color: var(--brand); }
.pcard__rows { margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--line); display: flex; flex-direction: column; gap: 9px; }
.pcard__rows div { display: flex; justify-content: space-between; gap: 12px; font-size: 12.5px; }
.pcard__rows dt, .pcard__rows span:first-child { color: var(--ink-3); }
.pcard__rows b { color: var(--ink); font-weight: 600; font-family: var(--mono); font-size: 12.5px; }

.detail { padding-top: 48px; padding-bottom: 64px; }

/* 内容面板 */
.panel { border: 1px solid var(--line); background: var(--surface); margin-bottom: 24px; }
.panel__hd {
	display: flex; align-items: center; justify-content: space-between; gap: 12px;
	padding: 14px 20px; background: var(--surface-2); border-bottom: 1px solid var(--line);
}
.panel__hd h2, .panel__hd h3 { font-size: 15px; letter-spacing: .04em; color: var(--ink); }
.panel__hd h2::before, .panel__hd h3::before {
	content: ""; display: inline-block; width: 3px; height: 13px;
	background: var(--brand); margin-right: 9px; vertical-align: -1px;
}
.panel__bd { padding: 22px 20px; }

/* 参数表：两列 kv */
.spec { display: grid; grid-template-columns: 1fr 1fr; gap: 0 32px; }
.spec__row { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; padding: 11px 0; border-bottom: 1px dashed var(--line); font-size: 14px; }
.spec__row span { color: var(--ink-3); flex: none; }
.spec__row b { color: var(--ink); font-weight: 600; text-align: right; }

/* 价格方案 4 格 */
.plans { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--line); border: 1px solid var(--line); }
.plan { background: var(--surface); padding: 20px 16px; position: relative; }
.plan.is-best { background: var(--brand-soft); }
.plan__tag { font-size: 12px; color: var(--ink-3); letter-spacing: .06em; }
.plan.is-best .plan__tag { color: var(--brand); font-weight: 600; }
.plan__price { margin-top: 8px; font-family: var(--mono); font-size: 24px; font-weight: 600; color: var(--ink); letter-spacing: -.01em; }
.plan__price i { font-style: normal; font-size: 14px; color: var(--ink-3); }
.plan__sub { margin-top: 4px; font-size: 12px; color: var(--ink-3); font-family: var(--mono); }
.plan__best {
	position: absolute; top: 0; right: 0; font-size: 10.5px; letter-spacing: .08em;
	background: var(--brand); color: var(--on-brand); padding: 2px 7px;
}

/* 相关产品 */
.rel__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.rel__card { border: 1px solid var(--line); background: var(--surface); padding: 20px; display: flex; flex-direction: column; }
.rel__card:hover { border-color: var(--line-strong); }
.rel__name { font-size: 15px; font-weight: 600; color: var(--ink); }
.rel__spec { font-size: 12.5px; color: var(--ink-3); margin-top: 8px; line-height: 1.7; }
.rel__foot { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: auto; padding-top: 14px; border-top: 1px solid var(--line); }
.rel__foot > span:first-child { font-family: var(--mono); font-size: 16px; font-weight: 600; color: var(--accent); }
.rel__foot > span:last-child { font-size: 12.5px; color: var(--brand); font-weight: 600; display: inline-flex; align-items: center; gap: 4px; white-space: nowrap; }
.rel__foot svg { width: 11px; height: 11px; flex: none; }

/* ============================================================
   12. 分页
   ============================================================ */
.pager { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; padding: 32px 0 8px; }
.pager a, .pager span {
	min-width: 36px; height: 36px; display: inline-flex; align-items: center; justify-content: center;
	padding: 0 10px; border: 1px solid var(--line); background: var(--surface);
	font-size: 13.5px; color: var(--ink-2); font-family: var(--mono);
}
.pager a:hover { border-color: var(--brand); color: var(--brand); }
.pager .is-on { background: var(--brand); border-color: var(--brand); color: var(--on-brand); font-weight: 600; }
.pager .is-gap { border: 0; background: none; color: var(--ink-3); }
.pager__info { margin-left: auto; font-size: 12.5px; color: var(--ink-3); }

/* 兼容模板原有的 ajax-pager 结构（archive/single 的 mf_pagenav 输出） */
.ajax-pager { padding: 32px 0 8px; }
.ajax-pagenav { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.ajax-pagenav .button {
	min-width: 36px; height: 36px; display: inline-flex; align-items: center; justify-content: center;
	padding: 0 10px; border: 1px solid var(--line); background: var(--surface);
	font-size: 13.5px; color: var(--ink-2); font-family: var(--mono);
}
.ajax-pagenav .button:hover { border-color: var(--brand); color: var(--brand); }
.ajax-pagenav .button.selected { background: var(--brand); border-color: var(--brand); color: var(--on-brand); font-weight: 600; }
.ajax-pagenav .button.disabled { pointer-events: none; opacity: .6; }
.ajax-pagenav .bordernone { border: 0; background: none; }
.ajax-pagenav .pager-center { display: inline-flex; align-items: center; gap: 6px; font-size: 12.5px; color: var(--ink-3); margin-left: 8px; }
.ajax-pagenav .pager-center input {
	width: 54px; height: 36px; border: 1px solid var(--line); background: var(--surface);
	text-align: center; font-family: var(--mono); font-size: 13px; color: var(--ink);
}
.btn-pager { display: flex; gap: 6px; margin-top: 10px; }
.btn-pager .button {
	width: 36px; height: 36px; display: inline-flex; align-items: center; justify-content: center;
	border: 1px solid var(--line); background: var(--surface); color: var(--ink-2);
}
.btn-pager .button:hover { border-color: var(--brand); color: var(--brand); }

/* ============================================================
   13. 底部咨询带 + 页脚 + 工具条
   ============================================================ */
.cta { background: linear-gradient(112deg, var(--brand-deep), #0B3A32); color: #EAF4F1; border-top: 1px solid rgba(255, 255, 255, .08); }
[data-theme="dark"] .cta { background: linear-gradient(112deg, #0A1F1A, #0D3129); }
.cta__in { display: flex; align-items: center; justify-content: space-between; gap: 32px; padding-top: 44px; padding-bottom: 44px; flex-wrap: wrap; }
.cta h3 { font-family: var(--serif); font-size: 27px; color: #fff; margin-bottom: 8px; }
.cta p { font-size: 14px; color: #A9C6BE; }
.cta__btns { display: flex; gap: 12px; flex-wrap: wrap; }
.cta .btn--ghost { border-color: rgba(234, 244, 241, .35); color: #EAF4F1; }
.cta .btn--ghost:hover { background: rgba(234, 244, 241, .12); border-color: #EAF4F1; color: #fff; }

.footer { background: #0A1512; color: #93A8A0; font-size: 13.5px; padding: 56px 0 0; }
[data-theme="dark"] .footer { background: #070E0C; border-top: 1px solid var(--line); }
.footer__grid { display: grid; grid-template-columns: 1.5fr 1fr 1fr 1fr; gap: 48px; padding-bottom: 44px; }
.footer h5 { font-size: 13px; color: #E4EDE9; letter-spacing: .06em; margin: 0 0 18px; font-weight: 600; }
.footer li { margin-bottom: 10px; }
.footer a { color: #93A8A0; }
.footer a:hover { color: #8FE3CE; }
.footer__brand p { margin-top: 16px; line-height: 1.9; max-width: 340px; color: #8AA098; }
.footer__brand .logo__cn { color: #E9F1ED; }
.footer__tel { margin-top: 18px; font-family: var(--mono); font-size: 24px; color: #8FE3CE; letter-spacing: .01em; }
.footer__tel small { display: block; font-family: var(--sans); font-size: 12px; color: #7B918A; letter-spacing: .06em; margin-bottom: 4px; }
.footer__links { border-top: 1px solid rgba(255, 255, 255, .09); padding: 18px 0; font-size: 12.5px; }
.footer__links ul { display: flex; flex-wrap: wrap; gap: 8px 18px; }
.footer__bot {
	border-top: 1px solid rgba(255, 255, 255, .09); padding: 20px 0;
	display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap;
	font-size: 12.5px; color: #758A83;
}
.footer__bot a { color: #758A83; }
.footer__bot a:hover { color: #8FE3CE; }
.footer__bot-l { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }

/* 侧边工具条 */
.aside-tools {
	position: fixed; right: 16px; bottom: 88px; z-index: 50;
	display: flex; flex-direction: column; gap: 1px;
	background: var(--line); border: 1px solid var(--line);
}
.aside-tools a, .aside-tools button {
	width: 52px; height: 52px; display: flex; flex-direction: column;
	align-items: center; justify-content: center; gap: 3px;
	background: var(--surface); color: var(--ink-3); font-size: 10px; transition: .18s;
}
.aside-tools a:hover, .aside-tools button:hover { background: var(--brand); color: var(--on-brand); }
.aside-tools svg { width: 17px; height: 17px; }
/* 二维码浮层 */
.qr-pop {
	position: absolute; right: 60px; bottom: 0; display: none;
	background: var(--surface); border: 1px solid var(--line); box-shadow: var(--shadow-md);
	padding: 12px; text-align: center; width: 168px;
}
.qr-pop img { width: 140px; height: 140px; object-fit: contain; margin: 0 auto; }
.qr-pop p { font-size: 11.5px; color: var(--ink-3); margin-top: 8px; line-height: 1.5; }
.qr-pop .qr-item + .qr-item { margin-top: 12px; padding-top: 12px; border-top: 1px solid var(--line); }
.aside-tools__qr { position: relative; }
.aside-tools__qr:hover .qr-pop { display: block; }

/* 客户经理模态弹窗（点侧栏「经理」打开；二维码 180px 可扫） */
.mgr-modal {
	position: fixed; inset: 0; z-index: 120;
	display: none; align-items: center; justify-content: center; padding: 20px;
}
.mgr-modal.is-open { display: flex; }
.mgr-modal__mask { position: absolute; inset: 0; background: rgba(6, 14, 12, .55); }
.mgr-modal__box {
	position: relative; background: var(--surface); border: 1px solid var(--line);
	box-shadow: var(--shadow-md); padding: 28px 28px 26px;
	max-width: 760px; width: 100%; max-height: calc(100vh - 40px); overflow: auto;
	text-align: center;
}
.mgr-modal__x {
	position: absolute; top: 10px; right: 10px; width: 34px; height: 34px;
	display: flex; align-items: center; justify-content: center;
	background: none; color: var(--ink-3); border: 0; cursor: pointer; transition: .18s;
}
.mgr-modal__x:hover { color: var(--brand); }
.mgr-modal__x svg { width: 18px; height: 18px; }
.mgr-modal h3 { font-family: var(--serif); font-size: 21px; color: var(--ink); margin: 0 0 6px; }
.mgr-modal__tip { font-size: 13px; color: var(--ink-3); margin: 0 0 22px; }
/* 主展示区：同一时间只显示一张大二维码 */
.mgr-main { display: grid; }
.mgr-main__item {
	grid-area: 1 / 1; display: none; flex-direction: column; align-items: center; gap: 12px;
}
.mgr-main__item.is-on { display: flex; }
.mgr-main__item img {
	width: 280px; max-width: 100%; height: auto; aspect-ratio: 1 / 1; object-fit: contain;
	background: #fff; border: 1px solid var(--line); padding: 8px;
}
.mgr-main__item b { font-size: 15px; color: var(--ink); font-weight: 600; }
/* 底部缩略图切换条 */
.mgr-thumbs {
	display: flex; flex-wrap: wrap; justify-content: center; gap: 8px;
	margin-top: 20px; padding-top: 16px; border-top: 1px solid var(--line);
}
.mgr-thumb {
	display: flex; flex-direction: column; align-items: center; gap: 4px;
	width: 62px; padding: 6px 4px; background: none; border: 1px solid transparent;
	color: var(--ink-3); font-size: 10.5px; cursor: pointer; transition: .18s;
}
.mgr-thumb img { width: 44px; height: 44px; object-fit: contain; background: #fff; }
.mgr-thumb:hover { color: var(--brand); }
.mgr-thumb.is-on { border-color: var(--brand); color: var(--brand); background: var(--brand-soft); }
@media (max-width: 520px) {
	.mgr-modal__box { padding: 22px 16px 18px; }
	.mgr-main__item img { width: 220px; }
}

/* ============================================================
   14. 响应式
   ============================================================ */
/* 导航 10 项一级菜单较宽：1366 以下再压缩，1200 以下收汉堡 */
@media (max-width: 1366px) {
	.nav > li > a { padding: 0 6px; font-size: 14px; }
	.header__act .btn { display: none; }
}
@media (max-width: 1200px) {
	.slide__title { font-size: 42px; }
	.split { grid-template-columns: minmax(0, 1fr) 300px; gap: 40px; }
	.phead__in { grid-template-columns: minmax(0, 1fr) 300px; gap: 40px; }
}

@media (max-width: 1100px) {
	.about__grid { grid-template-columns: 1fr; gap: 40px; }
	.footer__grid { grid-template-columns: 1.4fr 1fr 1fr; gap: 36px; }
	.footer__grid > div:last-child { display: none; }
	.page-hero__in { grid-template-columns: 1fr; gap: 30px; }
	.hstats { max-width: 420px; }
	.rel__grid, .svc, .notes, .cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.plans { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 1200px) { /* 10 项一级菜单 1200 以下收汉堡 */
	.nav-wrap {
		display: none; position: absolute; left: 0; right: 0; top: 100%;
		background: var(--surface); border-bottom: 1px solid var(--line);
		box-shadow: var(--shadow-md); padding: 8px 16px 16px; z-index: 70;
	}
	.nav-wrap.is-open { display: block; }
	.nav { flex-direction: column; align-items: stretch; gap: 0; }
	.nav > li > a {
		height: 48px; width: 100%; border-bottom: 1px solid var(--line);
		margin: 0; padding: 0 4px; justify-content: space-between;
	}
	.nav .sub-menu {
		position: static; opacity: 1; visibility: visible; transform: none;
		box-shadow: none; border: 0; padding: 4px 0 8px 14px; display: none;
	}
	.nav > li.is-expanded > .sub-menu { display: block; }
	.nav > li.menu-item-has-children > a::after { transition: transform .2s; }
	.nav > li.is-expanded.menu-item-has-children > a::after { transform: rotate(180deg); }
	.burger { display: grid; }
	.header__act .btn { display: none; }

	.sec { padding: 60px 0; }
	.slide__inner { grid-template-columns: 1fr; gap: 30px; padding-top: 64px; padding-bottom: 88px; }
	.datacard { display: none; }
	.hero__slides { min-height: 440px; }
	.slide__title { font-size: 36px; }
	.notice-bar__in { height: auto; flex-direction: column; align-items: stretch; padding: 14px 0; gap: 12px; }
	.searchbox { width: 100%; border-left: 0; padding-left: 0; border-top: 1px solid var(--line); padding-top: 10px; }
	.cats { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.news__grid { grid-template-columns: 1fr; gap: 0; }
	.news__col { margin-bottom: 34px; }
	.split { grid-template-columns: 1fr; gap: 36px; }
	.aside { position: static; }
	.phead__in { grid-template-columns: 1fr; gap: 26px; }
	.page-hero__title { font-size: 32px; }
	.feats { gap: 24px; }
	.spec { grid-template-columns: 1fr; }
	.rel__grid, .svc, .notes, .cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 768px) {
	.topbar__list span:not(:first-child) { display: none; }
	.sec-title { font-size: 26px; }
	.slide__title { font-size: 30px; }
	.slide__desc { font-size: 14.5px; }
	.hero__slides { min-height: 470px; }
	.sec-head { flex-direction: column; align-items: flex-start; gap: 14px; margin-bottom: 28px; }
	.cats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.cats .cat:last-child:nth-child(odd) { grid-column: span 2; }
	.about__stats { grid-template-columns: 1fr 1fr; }
	.feats { grid-template-columns: 1fr; }
	.footer__grid { grid-template-columns: 1fr 1fr; gap: 28px; }
	.footer__brand { grid-column: 1 / -1; }
	.cta__in { padding-top: 34px; padding-bottom: 34px; }
	.cta h3 { font-size: 22px; }
	.aside-tools { display: none; }
	.price-head { flex-direction: column; align-items: flex-start; }
	.table-hint { display: inline-flex; }
	.tabs { overflow-x: auto; -webkit-overflow-scrolling: touch; scrollbar-width: none; }
	.tabs::-webkit-scrollbar { display: none; }
	.tabs button, .tabs a { flex: none; padding: 12px 16px; font-size: 13px; }
	/* 窄屏表格：首列固定，其余横向滚动 */
	.ptable .c-no { position: sticky; left: 0; z-index: 2; background: inherit; box-shadow: 1px 0 0 var(--line); }
	.ptable th.c-no { z-index: 3; }
	.rel__grid, .svc, .notes, .cards { grid-template-columns: 1fr; }
	.plans { grid-template-columns: repeat(2, 1fr); }
	.phead__quick { grid-template-columns: 1fr 1fr; gap: 18px; }
	.art__title { font-size: 26px; }
	.entry { font-size: 16px; }
	.footer__bot { flex-direction: column; gap: 8px; }
}

@media (max-width: 520px) {
	.spec__row { flex-direction: column; align-items: flex-start; gap: 3px; }
	.spec__row b { text-align: left; }
}

@media (max-width: 480px) {
	.wrap { padding: 0 16px; }
	.topbar { font-size: 11px; }
	.topbar__in { height: 32px; }
	.topbar__right { gap: 10px; }
	.sec { padding: 44px 0; }
	.logo__en { display: none; }
	.logo__cn { font-size: 18px; }
	.slide__title { font-size: 25px; }
	.slide__btns .btn { height: 42px; padding: 0 16px; font-size: 14px; }
	.cat { padding: 18px 14px; }
	.about__stats { grid-template-columns: 1fr; }
	.footer__grid { grid-template-columns: 1fr; }
	.ptable { min-width: 880px; }
	.phead__title { font-size: 23px; }
	.pcard__price b { font-size: 32px; }
	.plans { grid-template-columns: 1fr 1fr; }
	.page-hero__in { padding-top: 36px; padding-bottom: 40px; }
}

@media print {
	.header, .topbar, .aside-tools, .hero__ctrl, .theme-btn, .notice-bar, .cta, .burger { display: none !important; }
	body { background: #fff; color: #000; }
}
