/**
 * new4 — 美工改版 v4
 * 墨蓝基底 · 暖金强调 · 青玉点缀 · 衬线标题（仅 .tpl-new4）
 */

:root {
	--lx-bg: #090d12;
	--lx-bg-mid: #0e141c;
	--lx-bg-elevated: #131b26;
	--lx-bg-card: rgba(255, 255, 255, 0.045);
	--lx-bg-card-hover: rgba(255, 255, 255, 0.075);
	--lx-border: rgba(232, 224, 210, 0.1);
	--lx-border-soft: rgba(232, 224, 210, 0.06);
	--lx-text: #eef2f7;
	--lx-muted: rgba(226, 230, 236, 0.62);
	--lx-dim: rgba(180, 188, 200, 0.42);
	--lx-gold: #d4a574;
	--lx-gold-dim: rgba(212, 165, 116, 0.35);
	--lx-jade: #3ecf9f;
	--lx-jade-soft: rgba(62, 207, 159, 0.22);
	--lx-sky: #7eb8ff;
	--lx-serif: 'Source Serif 4', 'Noto Serif SC', 'Songti SC', Georgia, serif;
	--lx-font: 'DM Sans', 'Noto Sans SC', system-ui, sans-serif;
	--lx-mono: 'JetBrains Mono', ui-monospace, monospace;
	--lx-max: 1280px;
	/* 顶栏胶囊宽度：约为视口宽度 80%（与安全区内边取较小值） */
	--lx-nav-bar-width: 80vw;
	--lx-radius: 18px;
	--lx-radius-lg: 26px;
	--lx-shadow: 0 28px 80px rgba(0, 0, 0, 0.42);
	--lx-shadow-soft: 0 16px 48px rgba(0, 0, 0, 0.28);
	/* 固定顶栏占位：含安全区与「浮岛」上边距 */
	--lx-nav-clear: clamp(88px, 12vw, 112px);
}

/* 内页：为 fixed 顶栏留出空间；首页由 new4.js 加 new4-home-body 取消 */
body.tpl-new4 {
	padding-top: var(--lx-nav-clear);
}

body.tpl-new4.new4-home-body {
	padding-top: 0;
}

.tpl-new4 {
	font-family: var(--lx-font);
	background:
		radial-gradient(ellipse 120% 80% at 10% -10%, rgba(212, 165, 116, 0.07), transparent 52%),
		radial-gradient(ellipse 90% 60% at 95% 35%, rgba(62, 207, 159, 0.06), transparent 48%),
		var(--lx-bg);
	color: var(--lx-text);
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}

.tpl-new4 #backTop {
	background: linear-gradient(145deg, var(--lx-gold), #c8956a);
	border: none;
	border-radius: 12px;
	color: #151210 !important;
	font-weight: 700;
	box-shadow: 0 14px 44px var(--lx-gold-dim);
}

.tpl-new4 #backTop:hover {
	transform: translateY(-3px);
	color: #151210 !important;
}

/* —— 滚动进度 —— */
.lx-progress {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	height: 3px;
	z-index: 11000;
	background: rgba(255, 255, 255, 0.04);
	pointer-events: none;
}

.lx-progress span {
	display: block;
	height: 100%;
	width: 0%;
	background: linear-gradient(90deg, var(--lx-jade), var(--lx-gold));
	box-shadow: 0 0 24px var(--lx-jade-soft);
	border-radius: 0 2px 2px 0;
}

/* —— 顶栏：Palantir 式浮岛 · 强毛玻璃（#myHeader 提高优先级，避免被 styles.css .header 底色盖住） —— */
.tpl-new4 #myHeader.header.lx-nav,
.tpl-new4 .lx-nav {
	position: fixed;
	top: max(0.5rem, env(safe-area-inset-top, 0px));
	left: 0;
	right: 0;
	width: min(var(--lx-nav-bar-width), calc(100vw - 2 * max(1rem, env(safe-area-inset-left, 0px), env(safe-area-inset-right, 0px))));
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
	z-index: 10080;
	padding: 0;
	/* overflow:hidden 在部分环境下会削弱 backdrop 合成观感 */
	overflow: visible;
	border-radius: 14px;
	border: none;
	box-shadow:
		0 12px 48px rgba(0, 0, 0, 0.1),
		inset 0 1px 0 rgba(255, 255, 255, 0.22);
	/*
	 * 毛玻璃：浅色雾面层（不要用深色 rgba，否则像一块黑条盖住 blur）。
	 * 背后内容由 backdrop-filter 雾化透出。
	 */
	background: rgba(255, 255, 255, 0.1) !important;
	/* 模糊再轻一档，背后内容更清晰（过重会像整块磨砂） */
	backdrop-filter: blur(12px) saturate(1.5) !important;
	-webkit-backdrop-filter: blur(12px) saturate(1.5) !important;
	transition: background 0.38s ease;
	will-change: backdrop-filter;
}

.tpl-new4 #myHeader.header.lx-nav.is-scrolled,
.tpl-new4 .lx-nav.is-scrolled {
	background: rgba(255, 255, 255, 0.16) !important;
}

@supports not (
	(backdrop-filter: blur(1px))
	or (-webkit-backdrop-filter: blur(1px))
) {
	.tpl-new4 #myHeader.header.lx-nav,
	.tpl-new4 .lx-nav {
		background: rgba(12, 14, 18, 0.82) !important;
		backdrop-filter: none !important;
		-webkit-backdrop-filter: none !important;
	}

	.tpl-new4 #myHeader.header.lx-nav.is-scrolled,
	.tpl-new4 .lx-nav.is-scrolled {
		background: rgba(12, 14, 18, 0.9) !important;
	}
}

/*
 * 勿在 prefers-reduced-motion 下关闭 backdrop-filter：
 * Windows「动画效果」关闭时 Chromium 会启用该媒体查询，
 * 原先写成实心深色顶栏 → 用户一直觉得「背景很黑、没有毛玻璃」。
 */
@media (prefers-reduced-motion: reduce) {
	.tpl-new4 #myHeader.header.lx-nav,
	.tpl-new4 .lx-nav {
		transition: none !important;
	}

	.tpl-new4 #myHeader.header.lx-nav.is-scrolled,
	.tpl-new4 .lx-nav.is-scrolled {
		transition: none !important;
	}
}

/* main.js 会给 #myHeader 加 .sticky，保持与默认相同的收窄宽度 */
.tpl-new4 #myHeader.header.lx-nav.sticky,
.tpl-new4 .lx-nav.sticky {
	top: max(0.5rem, env(safe-area-inset-top, 0px));
	left: 0;
	right: 0;
	width: min(var(--lx-nav-bar-width), calc(100vw - 2 * max(1rem, env(safe-area-inset-left, 0px), env(safe-area-inset-right, 0px))));
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
	z-index: 10080;
}

/* 避免主题里 .sticky.header:before 叠一层盖住毛玻璃观感 */
.tpl-new4 #myHeader.header.sticky::before {
	content: none !important;
	display: none !important;
}

.tpl-new4 .lx-nav .container {
	max-width: 100%;
}

/* Bootstrap navbar-dark 可能带深色底，盖住顶栏雾面 */
.tpl-new4 #myHeader.header.lx-nav .navbar,
.tpl-new4 #myHeader.header.lx-nav .navbar-collapse {
	background: transparent !important;
	box-shadow: none !important;
}

.tpl-new4 .lx-nav .navbar {
	padding-top: 0.65rem;
	padding-bottom: 0.65rem;
	align-items: center;
	justify-content: space-between;
	width: 100%;
}

.tpl-new4 .lx-nav .navbar-brand img {
	width: auto;
	height: auto;
	max-height: clamp(38px, 5.25vw, 52px);
	max-width: min(230px, 46vw);
	object-fit: contain;
	transition:
		filter 0.35s ease,
		opacity 0.35s ease;
}

/* LOGO 随背后区块明暗切换（由 data-lx-nav-tone + new4.js 采样控制） */
.tpl-new4 .lx-nav.lx-nav--tone-dark .navbar-brand img {
	filter: brightness(0) invert(1);
	opacity: 0.94;
}

/* 亮背景区块：压成深色剪影（适配纯白 Logo；有色 Logo会单色化以利辨认） */
.tpl-new4 .lx-nav.lx-nav--tone-light .navbar-brand img {
	filter: brightness(0);
	opacity: 0.96;
}

.tpl-new4 .lx-nav.lx-nav--tone-dark .navbar-brand:hover img {
	filter: brightness(0) invert(1);
	opacity: 1;
}

.tpl-new4 .lx-nav.lx-nav--tone-light .navbar-brand:hover img {
	filter: brightness(0);
	opacity: 1;
}

.tpl-new4 .lx-nav .navbar-brand {
	padding-top: 0;
	padding-bottom: 0;
}

.tpl-new4 .lx-nav .nav-link {
	font-family: var(--lx-font);
	font-size: 0.875rem !important;
	font-weight: 500;
	text-transform: none;
	letter-spacing: 0.02em;
	color: var(--lx-muted) !important;
	padding: 0.55rem 1rem !important;
	position: relative;
	border-radius: 8px;
	transition:
		color 0.25s ease,
		background 0.25s ease;
}

.tpl-new4 .lx-nav .nav-link::after {
	display: none;
}

.tpl-new4 .lx-nav .nav-link:hover {
	color: var(--lx-text) !important;
	background: rgba(255, 255, 255, 0.06);
}

.tpl-new4 .lx-nav .dropdown-menu {
	background: rgba(18, 24, 32, 0.98);
	border: 1px solid var(--lx-border);
	border-radius: 14px;
	padding: 0.45rem;
	min-width: 13rem;
	box-shadow: var(--lx-shadow);
	margin-top: 0.35rem;
}

.tpl-new4 .lx-nav .dropdown-item {
	font-size: 0.875rem;
	color: var(--lx-muted);
	border-radius: 10px;
	padding: 0.5rem 0.75rem;
	font-family: var(--lx-font);
}

.tpl-new4 .lx-nav .dropdown-item:hover {
	background: rgba(212, 165, 116, 0.12);
	color: var(--lx-text);
}

.tpl-new4 .lx-nav .theme-btn.btn-border.white {
	border: 1px solid var(--lx-border);
	background: rgba(255, 255, 255, 0.04);
	color: var(--lx-text) !important;
	border-radius: 999px;
	height: 40px;
	padding: 0 1.25rem;
	font-family: var(--lx-font);
	font-size: 0.8125rem !important;
	text-transform: none;
	letter-spacing: 0.02em;
	font-weight: 600;
}

.tpl-new4 .lx-nav .theme-btn.btn-border.white:hover {
	border-color: var(--lx-gold);
	background: rgba(212, 165, 116, 0.1);
}

.tpl-new4 .lx-nav .navbar-toggler {
	border-color: var(--lx-border);
	border-radius: 10px;
}

/* 顶栏菜单文案 / 按钮 / 汉堡：随 lx-nav--tone-dark | tone-light 与 LOGO 同步 */
.tpl-new4 #myHeader.header.lx-nav.lx-nav--tone-dark .navbar-nav .nav-link,
.tpl-new4 .lx-nav.lx-nav--tone-dark .navbar-nav .nav-link {
	color: var(--lx-muted) !important;
}

.tpl-new4 #myHeader.header.lx-nav.lx-nav--tone-dark .navbar-nav .nav-link:hover,
.tpl-new4 .lx-nav.lx-nav--tone-dark .navbar-nav .nav-link:hover {
	color: var(--lx-text) !important;
	background: rgba(255, 255, 255, 0.06);
}

.tpl-new4 #myHeader.header.lx-nav.lx-nav--tone-light .navbar-nav .nav-link,
.tpl-new4 .lx-nav.lx-nav--tone-light .navbar-nav .nav-link {
	color: rgba(18, 20, 26, 0.74) !important;
}

.tpl-new4 #myHeader.header.lx-nav.lx-nav--tone-light .navbar-nav .nav-link:hover,
.tpl-new4 .lx-nav.lx-nav--tone-light .navbar-nav .nav-link:hover {
	color: rgba(6, 8, 12, 0.96) !important;
	background: rgba(0, 0, 0, 0.055);
}

.tpl-new4 #myHeader.header.lx-nav.lx-nav--tone-light .navbar-nav .dropdown-toggle::after,
.tpl-new4 .lx-nav.lx-nav--tone-light .navbar-nav .dropdown-toggle::after {
	border-top-color: rgba(22, 24, 30, 0.62);
}

.tpl-new4 #myHeader.header.lx-nav.lx-nav--tone-light .theme-btn.btn-border.white,
.tpl-new4 .lx-nav.lx-nav--tone-light .theme-btn.btn-border.white {
	border-color: rgba(0, 0, 0, 0.16);
	background: rgba(0, 0, 0, 0.035);
	color: rgba(14, 16, 22, 0.92) !important;
}

.tpl-new4 #myHeader.header.lx-nav.lx-nav--tone-light .theme-btn.btn-border.white:hover,
.tpl-new4 .lx-nav.lx-nav--tone-light .theme-btn.btn-border.white:hover {
	border-color: rgba(0, 0, 0, 0.3);
	background: rgba(0, 0, 0, 0.075);
	color: #090d12 !important;
}

.tpl-new4 #myHeader.header.lx-nav.lx-nav--tone-light .navbar-toggler,
.tpl-new4 .lx-nav.lx-nav--tone-light .navbar-toggler {
	border-color: rgba(0, 0, 0, 0.18);
}

.tpl-new4 #myHeader.header.lx-nav.lx-nav--tone-light .navbar-toggler-icon,
.tpl-new4 .lx-nav.lx-nav--tone-light .navbar-toggler-icon {
	filter: invert(1);
	opacity: 0.82;
}

.tpl-new4 #myHeader.header.lx-nav.lx-nav--tone-light .header-btn-group,
.tpl-new4 .lx-nav.lx-nav--tone-light .header-btn-group {
	color: rgba(22, 24, 30, 0.42);
}

.tpl-new4 #myHeader.header.lx-nav.lx-nav--tone-dark .header-btn-group,
.tpl-new4 .lx-nav.lx-nav--tone-dark .header-btn-group {
	color: rgba(226, 230, 236, 0.38);
}

/* —— 布局 —— */
.lx-main {
	overflow-x: hidden;
}

.lx-container {
	width: 100%;
	max-width: var(--lx-max);
	margin-left: auto;
	margin-right: auto;
	padding-left: clamp(1.25rem, 5vw, 2.25rem);
	padding-right: clamp(1.25rem, 5vw, 2.25rem);
}

.lx-stack {
	counter-reset: lxsec;
}

section.lx-panel {
	counter-increment: lxsec;
}

/* —— Hero —— */
.lx-hero {
	position: relative;
	min-height: min(100vh, 940px);
	display: flex;
	align-items: center;
	padding: clamp(5.5rem, 14vh, 9.5rem) 0 clamp(4.5rem, 11vh, 7rem);
	overflow: hidden;
	border-bottom: none;
	isolation: isolate;
	background: var(--lx-bg-mid);
}

.lx-hero__media {
	position: absolute;
	inset: 0;
	z-index: 0;
	overflow: hidden;
}

.lx-hero__photo,
.lx-hero__video {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.lx-hero__photo {
	z-index: 0;
	transition: opacity 0.75s ease;
}

.lx-hero__video {
	z-index: 1;
	opacity: 0;
	transition: opacity 0.75s ease;
	pointer-events: none;
}

.lx-hero--video-ready .lx-hero__video {
	opacity: 1;
}

.lx-hero--video-ready .lx-hero__photo {
	opacity: 0;
}

@media (prefers-reduced-motion: reduce) {
	.lx-hero__video {
		display: none !important;
	}

	.lx-hero--video-ready .lx-hero__photo {
		opacity: 1;
	}
}

/* Hero 遮罩：科技蓝——更深、更高饱和度（略带青的蓝），右侧仍渐透出画面 */
.lx-hero__scrim {
	position: absolute;
	inset: 0;
	z-index: 2;
	pointer-events: none;
	background: linear-gradient(
		105deg,
		rgba(0, 12, 48, 0.96) 0%,
		rgba(4, 58, 168, 0.82) 40%,
		rgba(10, 110, 235, 0.58) 100%
	);
}

.lx-hero__shell {
	position: relative;
	z-index: 10;
	width: 100%;
}

.lx-hero__layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: clamp(2rem, 5vw, 3.5rem);
	align-items: center;
}

.lx-hero__copy {
	min-width: 0;
}

.lx-hero__inner {
	max-width: 38rem;
}

@media (min-width: 992px) {
	.lx-hero__inner {
		max-width: 42rem;
	}
}

/* 纵向间距用 gap，避免每行外包一层 div 时 margin 折叠导致标题与副标题挤叠 */
.lx-hero-stage {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: clamp(1.15rem, 2.8vw, 1.75rem);
}

.lx-hero-stage .lx-hero__tag {
	margin-bottom: 0;
}

.lx-hero-stage .lx-hero__title {
	margin-bottom: 0;
}

.lx-hero-stage .lx-hero__lead,
.lx-hero-stage .lx-hero__pills {
	margin-top: 0;
	margin-bottom: 0;
}

.lx-hero__tag {
	font-family: var(--lx-mono);
	font-size: clamp(0.875rem, 2.1vw, 1.0625rem);
	font-weight: 600;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--lx-gold);
	margin-bottom: 1.5rem;
	display: flex;
	align-items: center;
	gap: 0.85rem;
}

.lx-hero__tag::before {
	content: '';
	width: 52px;
	height: 2px;
	border-radius: 2px;
	background: linear-gradient(90deg, var(--lx-gold), transparent);
}

.lx-hero__title {
	font-family: var(--lx-serif);
	font-size: clamp(2.35rem, 6.5vw, 3.85rem);
	font-weight: 600;
	line-height: 1.14;
	letter-spacing: -0.02em;
	margin: 0 0 1.35rem;
	max-width: 20ch;
	/* background-clip:text 时行框偏紧，两行时底部易与副标题视觉上打架 */
	padding-bottom: 0.14em;
	background: linear-gradient(180deg, #fff 18%, rgba(230, 218, 198, 0.95) 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

.lx-hero__lead {
	font-size: clamp(1.02rem, 2.2vw, 1.2rem);
	line-height: 1.78;
	color: var(--lx-muted);
	max-width: 40rem;
	margin: 0 0 1.5rem;
	font-weight: 400;
}

.lx-hero__pills {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem 0.65rem;
	margin: 0 0 2rem;
	min-height: 1.5rem;
}

.lx-pill {
	display: inline-flex;
	align-items: center;
	padding: 0.42rem 1rem;
	border-radius: 999px;
	border: 1px solid var(--lx-border);
	background: rgba(255, 255, 255, 0.04);
	font-family: var(--lx-font);
	font-size: 0.8125rem;
	font-weight: 500;
	letter-spacing: 0.03em;
	text-transform: none;
	color: rgba(238, 242, 247, 0.9);
	transition:
		border-color 0.3s ease,
		background 0.3s ease,
		transform 0.3s ease,
		box-shadow 0.3s ease;
}

.lx-pill:hover {
	border-color: rgba(212, 165, 116, 0.45);
	background: rgba(212, 165, 116, 0.08);
	transform: translateY(-2px);
	box-shadow: 0 12px 28px rgba(0, 0, 0, 0.2);
}

.lx-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.85rem 1rem;
	align-items: center;
}

.lx-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 50px;
	padding: 0 1.75rem;
	font-family: var(--lx-font);
	font-size: 0.9375rem;
	font-weight: 600;
	letter-spacing: 0.03em;
	text-transform: none;
	border-radius: 999px;
	border: none;
	cursor: pointer;
	text-decoration: none !important;
	transition:
		transform 0.35s cubic-bezier(0.22, 1, 0.36, 1),
		box-shadow 0.35s ease,
		filter 0.35s ease;
}

.lx-btn--solid {
	background: linear-gradient(145deg, var(--lx-jade), #2fb889);
	color: #081510 !important;
	box-shadow: 0 4px 0 rgba(0, 0, 0, 0.18), 0 18px 44px var(--lx-jade-soft);
}

.lx-btn--solid:hover {
	transform: translateY(-3px);
	filter: brightness(1.05);
	box-shadow:
		0 6px 0 rgba(0, 0, 0, 0.15),
		0 26px 56px rgba(62, 207, 159, 0.35);
}

.lx-btn--ghost {
	background: transparent;
	color: var(--lx-muted) !important;
	border: 1px solid var(--lx-border);
	box-shadow: none;
	border-radius: 999px;
}

.lx-btn--ghost:hover {
	color: var(--lx-text) !important;
	border-color: var(--lx-gold);
	background: rgba(212, 165, 116, 0.06);
	transform: translateY(-2px);
}

/* Hero 入场 */
.lx-hero-stage .lx-hero-line {
	opacity: 0;
	transform: translateY(36px);
	transition:
		opacity 0.85s cubic-bezier(0.22, 1, 0.36, 1),
		transform 0.85s cubic-bezier(0.22, 1, 0.36, 1);
}

.lx-hero-stage.is-ready .lx-hero-line {
	opacity: 1;
	transform: translateY(0);
}

.lx-hero-stage.is-ready .lx-hero-line:nth-child(1) {
	transition-delay: 0.04s;
}

.lx-hero-stage.is-ready .lx-hero-line:nth-child(2) {
	transition-delay: 0.12s;
}

.lx-hero-stage.is-ready .lx-hero-line:nth-child(3) {
	transition-delay: 0.22s;
}

.lx-hero-stage.is-ready .lx-hero-line:nth-child(4) {
	transition-delay: 0.34s;
}

.lx-hero-stage.is-ready .lx-hero-line:nth-child(5) {
	transition-delay: 0.46s;
}

/* —— Panel —— */
.lx-panel {
	position: relative;
	padding: clamp(4.75rem, 12vw, 7.5rem) 0;
	border-bottom: 1px solid var(--lx-border-soft);
	background: transparent;
}

.lx-panel::before {
	content: '';
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
	width: min(92%, 1080px);
	height: 1px;
	background: linear-gradient(90deg, transparent, var(--lx-border), transparent);
	opacity: 0.85;
	pointer-events: none;
}

.lx-panel--alt {
	background: linear-gradient(180deg, rgba(19, 27, 38, 0.65) 0%, transparent 55%);
}

.lx-panel__grid {
	display: grid;
	grid-template-columns: minmax(56px, 100px) minmax(0, 1fr);
	gap: clamp(1.25rem, 4.5vw, 3.5rem);
	align-items: start;
}

@media (max-width: 767px) {
	.lx-panel__grid {
		grid-template-columns: 1fr;
		gap: 1.5rem;
	}
}

.lx-panel__rail {
	position: relative;
	padding-top: 0.5rem;
}

@media (max-width: 767px) {
	.lx-panel__rail {
		display: flex;
		flex-wrap: wrap;
		align-items: baseline;
		gap: 0.5rem 1rem;
		padding-bottom: 1rem;
		border-bottom: 1px solid var(--lx-border-soft);
		margin-bottom: 0.5rem;
	}
}

.lx-panel__idx {
	font-family: var(--lx-mono);
	font-size: 0.7rem;
	font-weight: 500;
	color: var(--lx-dim);
	letter-spacing: 0.12em;
	display: block;
	line-height: 1;
	text-transform: uppercase;
}

.lx-panel__idx::before {
	content: counter(lxsec, decimal-leading-zero);
	font-family: var(--lx-serif);
	font-size: 2rem;
	font-weight: 700;
	letter-spacing: -0.03em;
	display: block;
	margin-bottom: 0.85rem;
	background: linear-gradient(145deg, var(--lx-gold), var(--lx-jade));
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	text-shadow: none;
	filter: drop-shadow(0 12px 28px rgba(62, 207, 159, 0.15));
}

@media (max-width: 767px) {
	.lx-panel__idx::before {
		display: inline;
		margin-right: 0.45rem;
		margin-bottom: 0;
		font-size: 1.35rem;
		vertical-align: -0.12em;
	}

	.lx-panel__idx {
		display: inline;
		font-size: 0.65rem;
	}
}

.lx-panel__rail::after {
	content: '';
	position: absolute;
	top: 3.75rem;
	bottom: -2rem;
	left: 0.65rem;
	width: 2px;
	border-radius: 2px;
	background: linear-gradient(180deg, rgba(212, 165, 116, 0.55), rgba(62, 207, 159, 0.25), transparent 92%);
	opacity: 0.65;
}

@media (max-width: 767px) {
	.lx-panel__rail::after {
		display: none;
	}
}

.lx-panel__head {
	margin-bottom: clamp(2.25rem, 5vw, 3.25rem);
	max-width: 52rem;
}

.lx-panel__eyebrow {
	font-family: var(--lx-mono);
	font-size: 0.68rem;
	font-weight: 500;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--lx-jade);
	margin-bottom: 0.75rem;
	display: block;
}

.lx-panel__title {
	font-family: var(--lx-serif);
	font-size: clamp(1.75rem, 3.6vw, 2.65rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.02em;
	margin: 0 0 1.1rem;
	color: var(--lx-text);
}

.lx-panel__desc {
	margin: 0;
	font-size: 1.0625rem;
	line-height: 1.78;
	color: var(--lx-muted);
	max-width: 46rem;
	font-weight: 400;
}

.lx-panel__body {
	min-width: 0;
}

/* Tiles */
.lx-tiles {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.15rem;
}

@media (min-width: 768px) {
	.lx-tiles {
		grid-template-columns: repeat(3, 1fr);
		gap: 1.35rem;
	}
}

.lx-tile {
	position: relative;
	padding: 1.75rem 1.55rem;
	border-radius: var(--lx-radius);
	background: var(--lx-bg-card);
	border: 1px solid var(--lx-border-soft);
	overflow: hidden;
	transition:
		transform 0.45s cubic-bezier(0.22, 1, 0.36, 1),
		border-color 0.35s ease,
		background 0.35s ease,
		box-shadow 0.35s ease;
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
}

.lx-tile::before {
	content: '';
	position: absolute;
	inset: 0;
	border-radius: inherit;
	padding: 1px;
	background: linear-gradient(145deg, rgba(212, 165, 116, 0.35), transparent 42%, rgba(62, 207, 159, 0.22));
	-webkit-mask:
		linear-gradient(#fff 0 0) content-box,
		linear-gradient(#fff 0 0);
	mask:
		linear-gradient(#fff 0 0) content-box,
		linear-gradient(#fff 0 0);
	-webkit-mask-composite: xor;
	mask-composite: exclude;
	opacity: 0;
	transition: opacity 0.4s ease;
	pointer-events: none;
}

.lx-tile:hover {
	transform: translateY(-8px);
	border-color: rgba(212, 165, 116, 0.22);
	background: var(--lx-bg-card-hover);
	box-shadow: var(--lx-shadow-soft);
}

.lx-tile:hover::before {
	opacity: 1;
}

.lx-tile__icon {
	width: 56px;
	height: 56px;
	margin-bottom: 1.25rem;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	border: 1px solid var(--lx-border);
	background: rgba(255, 255, 255, 0.03);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.lx-tile__icon img {
	max-width: 28px;
	max-height: 28px;
	object-fit: contain;
	opacity: 0.92;
	transition:
		opacity 0.35s ease,
		transform 0.35s ease;
}

.lx-tile:hover .lx-tile__icon img {
	opacity: 1;
	transform: scale(1.08);
}

.lx-tile__title {
	font-family: var(--lx-serif);
	font-size: 1.125rem;
	font-weight: 600;
	margin: 0 0 0.65rem;
	line-height: 1.35;
	letter-spacing: -0.015em;
	color: var(--lx-text);
}

.lx-tile__text {
	margin: 0;
	font-size: 0.9375rem;
	line-height: 1.68;
	color: var(--lx-muted);
}

.lx-tile--text .lx-tile__title {
	font-size: 1.1875rem;
}

/* Marquee tray */
.lx-marquee-wrap {
	margin-top: 0.5rem;
	padding: 1.35rem 1rem;
	border-radius: var(--lx-radius);
	background: rgba(255, 255, 255, 0.03);
	border: 1px solid var(--lx-border-soft);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
	overflow: hidden;
}

.lx-marquee {
	position: relative;
	overflow: hidden;
	padding: 0.35rem 0;
	isolation: isolate;
}

/* 不用 mask-image：与内部 transform 动画叠加时部分浏览器会合成失效导致「不滚动」 */
.lx-marquee::before,
.lx-marquee::after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	width: clamp(40px, 8vw, 72px);
	z-index: 2;
	pointer-events: none;
}

.lx-marquee::before {
	left: 0;
	background: linear-gradient(90deg, rgba(14, 20, 28, 0.97), transparent);
}

.lx-marquee::after {
	right: 0;
	background: linear-gradient(270deg, rgba(14, 20, 28, 0.97), transparent);
}

.lx-marquee__track {
	display: flex;
	width: max-content;
	gap: clamp(2rem, 5vw, 3.75rem);
	animation: lx-marquee 44s linear infinite;
	align-items: center;
	will-change: transform;
	backface-visibility: hidden;
}

.lx-marquee:hover .lx-marquee__track {
	animation-play-state: paused;
}

.lx-marquee img {
	height: clamp(36px, 6.5vw, 48px);
	width: auto;
	max-width: 132px;
	object-fit: contain;
	opacity: 0.48;
	filter: grayscale(1) brightness(1.4);
	transition:
		opacity 0.35s ease,
		filter 0.35s ease;
}

.lx-marquee img:hover {
	opacity: 1;
	filter: grayscale(0) brightness(1);
}

@keyframes lx-marquee {
	0% {
		transform: translate3d(0, 0, 0);
	}

	100% {
		transform: translate3d(-50%, 0, 0);
	}
}

/* CTA */
.lx-cta {
	position: relative;
	padding: clamp(4rem, 11vw, 6.5rem) 0;
	background:
		radial-gradient(ellipse 55% 90% at 50% 120%, rgba(62, 207, 159, 0.09), transparent 58%),
		radial-gradient(ellipse 40% 70% at 15% 40%, rgba(212, 165, 116, 0.06), transparent 55%);
	border-bottom: none;
}

.lx-cta::before {
	display: none;
}

.lx-cta__card {
	max-width: 720px;
	margin: 0 auto;
	text-align: center;
	padding: clamp(2.25rem, 6vw, 3.25rem) clamp(1.5rem, 5vw, 2.5rem);
	border-radius: var(--lx-radius-lg);
	background: linear-gradient(165deg, rgba(255, 255, 255, 0.06) 0%, rgba(255, 255, 255, 0.02) 100%);
	border: 1px solid var(--lx-border);
	box-shadow: var(--lx-shadow-soft);
}

.lx-cta__text {
	font-family: var(--lx-serif);
	font-size: clamp(1.15rem, 2.5vw, 1.45rem);
	line-height: 1.65;
	color: var(--lx-muted);
	margin: 0 auto 1.75rem;
	font-weight: 500;
	max-width: 36rem;
}

.lx-cta .lx-btn--solid {
	min-width: 200px;
}

/* News */
.lx-newszone.lx-panel::before {
	background: linear-gradient(90deg, transparent, rgba(26, 23, 20, 0.1), transparent);
	opacity: 0.55;
}

.lx-newszone {
	padding: clamp(5rem, 12vw, 8rem) 0;
	background:
		radial-gradient(ellipse 70% 55% at 20% 30%, rgba(212, 165, 116, 0.08), transparent 52%),
		linear-gradient(180deg, #f8f5ef 0%, #f2ebe2 50%, #ebe4d8 100%);
	color: #1a1714;
	border-top: 1px solid rgba(26, 23, 20, 0.06);
}

.lx-newszone .lx-panel__title {
	color: #141210;
	font-weight: 600;
}

.lx-newszone .lx-panel__eyebrow {
	color: #2d7a63;
}

.lx-newszone .lx-panel__rail::after {
	background: linear-gradient(180deg, rgba(45, 122, 99, 0.45), rgba(212, 165, 116, 0.25), transparent 92%);
}

.lx-newszone .lx-panel__idx {
	color: rgba(26, 23, 20, 0.45);
}

.lx-newszone .lx-panel__idx::before {
	background: linear-gradient(145deg, #2d7a63, #c4956a);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

.lx-newsgrid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr));
	gap: 1.15rem;
}

.lx-newscard {
	border-radius: var(--lx-radius);
	padding: 1.45rem 1.5rem;
	background: #fffdf9;
	border: 1px solid rgba(26, 23, 20, 0.06);
	box-shadow: 0 8px 32px rgba(26, 23, 20, 0.05);
	transition:
		transform 0.35s cubic-bezier(0.22, 1, 0.36, 1),
		box-shadow 0.35s ease;
}

.lx-newscard:hover {
	transform: translateY(-6px);
	box-shadow: 0 22px 48px rgba(45, 122, 99, 0.1);
}

.lx-newscard h5 {
	font-family: var(--lx-serif);
	font-size: 1.0625rem;
	font-weight: 600;
	margin: 0 0 0.55rem;
	line-height: 1.38;
}

.lx-newscard h5 a {
	color: #141210 !important;
	text-decoration: none !important;
	background-image: linear-gradient(transparent calc(100% - 2px), rgba(45, 122, 99, 0.55) 2px);
	background-size: 0 100%;
	background-repeat: no-repeat;
	transition: background-size 0.35s ease;
}

.lx-newscard:hover h5 a {
	background-size: 100% 100%;
}

.lx-newscard p {
	margin: 0;
	font-size: 0.875rem;
	line-height: 1.58;
	color: rgba(26, 23, 20, 0.52);
}

.lx-newscard p a {
	color: inherit !important;
	text-decoration: none !important;
}

.lx-news-more {
	display: flex;
	justify-content: center;
	margin-top: 2.5rem;
}

.lx-news-more .lx-btn {
	background: linear-gradient(145deg, #2d7a63, #246652);
	color: #faf8f4 !important;
	box-shadow: 0 18px 44px rgba(45, 122, 99, 0.22);
}

.lx-news-more .lx-btn:hover {
	filter: brightness(1.06);
	box-shadow: 0 24px 52px rgba(45, 122, 99, 0.28);
}

/* Footer */
.tpl-new4 footer.lx-footer {
	background: linear-gradient(180deg, var(--lx-bg-mid) 0%, var(--lx-bg) 100%);
	border-top: 1px solid var(--lx-border-soft);
	padding-top: 4.25rem;
	padding-bottom: 2.25rem;
	color: var(--lx-muted);
}

.tpl-new4 footer.lx-footer h3 {
	font-family: var(--lx-font);
	font-size: 0.8125rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.12em;
	color: var(--lx-text);
	margin-bottom: 1.15rem;
}

.tpl-new4 footer.lx-footer .footer-wrapper p,
.tpl-new4 footer.lx-footer .footer-wrapper ul li a {
	color: var(--lx-muted) !important;
	font-size: 0.9rem;
	transition: color 0.25s ease;
	line-height: 1.55;
}

.tpl-new4 footer.lx-footer .footer-wrapper ul li a:hover {
	color: var(--lx-gold) !important;
}

.tpl-new4 footer.lx-footer .footer-social a {
	color: var(--lx-text) !important;
	background: rgba(255, 255, 255, 0.05);
	border: 1px solid var(--lx-border-soft);
	width: 40px;
	height: 40px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 12px;
	transition:
		border-color 0.25s ease,
		background 0.25s ease,
		transform 0.25s ease;
}

.tpl-new4 footer.lx-footer .footer-social a:hover {
	border-color: var(--lx-gold);
	background: rgba(212, 165, 116, 0.1);
	transform: translateY(-2px);
}

.tpl-new4 footer.lx-footer .footer-bottom {
	border-top: 1px solid var(--lx-border-soft);
	padding-top: 1.85rem;
	margin-top: 2.25rem;
	text-align: center;
	font-size: 0.8125rem;
	color: var(--lx-dim);
}

.tpl-new4 footer.lx-footer .footer-bottom a {
	color: var(--lx-muted) !important;
}

.tpl-new4 footer.lx-footer .footer-bottom a:hover {
	color: var(--lx-gold) !important;
}

/* Reveal */
.lx-reveal {
	opacity: 0;
	transform: translateY(32px);
	transition:
		opacity 0.75s cubic-bezier(0.22, 1, 0.36, 1),
		transform 0.75s cubic-bezier(0.22, 1, 0.36, 1);
}

.lx-reveal.lx-reveal--in {
	opacity: 1;
	transform: translateY(0);
}

.new4-home .section,
.new4-home .section2,
.new4-home .launch {
	background: transparent !important;
}

@media (prefers-reduced-motion: reduce) {
	.lx-marquee__track {
		animation: none !important;
	}

	.lx-hero-stage .lx-hero-line,
	.lx-reveal {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
	}

	.lx-progress span {
		transition: none;
	}

	.lx-tile:hover,
	.lx-newscard:hover {
		transform: none;
	}
}
