@charset "UTF-8";

/* ============================================================
   IIPC 官方网站 - 主样式表 v3
   设计风格：科技编辑风 — Tech-Editorial
   深色非对称Hero、蓝紫渐变主强调、金色克制点缀、
   Slate系浅色背景、400/600字重两极、编辑级留白
   ============================================================ */

/* === CSS 变量 === */
:root {
	/* ── 深空色调（Hero / Footer / 深色区）── */
	--space-950: #060d1a;
	--space-900: #0a1226;
	--space-800: #0f1d38;
	--space-700: #162850;
	--space-600: #1d3a6e;

	/* ── 蓝紫渐变主强调 ── */
	--blue-400: #63b3ed;
	--blue-500: #4299e1;
	--indigo-400: #818cf8;
	--indigo-500: #6366f1;
	--accent-from: #63b3ed;
	--accent-to: #818cf8;

	/* ── 金色（编辑级点缀）── */
	--gold: #c8a96e;
	--gold-light: #dac08a;
	--gold-pale: #f0e6d2;

	/* ── 金色渐变 ── */
	--gradient-gold: linear-gradient(135deg, var(--gold-light), var(--gold));
	--gradient-gold-hover: linear-gradient(135deg, var(--gold), #b8944f);

	/* ── Slate 中性系统 ── */
	--white: #ffffff;
	--slate-50: #f8fafc;
	--slate-100: #f1f5f9;
	--slate-200: #e2e8f0;
	--slate-300: #cbd5e1;
	--slate-400: #94a3b8;
	--slate-500: #64748b;
	--slate-600: #475569;
	--slate-700: #334155;
	--slate-800: #1e293b;
	--slate-900: #0f172a;

	/* ── 语义变量 ── */
	--c-text: var(--slate-800);
	--c-text-secondary: var(--slate-500);
	--c-text-light: var(--slate-400);
	--c-bg: var(--slate-50);
	--c-bg-white: var(--white);
	--c-border: var(--slate-200);
	--c-border-light: var(--slate-100);

	/* ── 渐变 ── */
	--gradient-accent: linear-gradient(
		135deg,
		var(--accent-from),
		var(--accent-to)
	);
	--gradient-accent-hover: linear-gradient(
		135deg,
		var(--blue-500),
		var(--indigo-500)
	);
	--gradient-hero-overlay: linear-gradient(
		170deg,
		rgba(6, 13, 26, 0.94) 0%,
		rgba(10, 18, 38, 0.78) 30%,
		rgba(15, 29, 56, 0.55) 60%,
		rgba(22, 40, 80, 0.25) 100%
	);
	--gradient-cta: linear-gradient(
		160deg,
		var(--space-900) 0%,
		#0f1d3a 50%,
		#131c4a 100%
	);
	--gradient-card-dark: linear-gradient(
		160deg,
		var(--space-800),
		var(--space-600)
	);

	/* ── 阴影 ── */
	--shadow-sm: 0 1px 2px rgba(15, 23, 42, 0.04);
	--shadow-md:
		0 1px 3px rgba(15, 23, 42, 0.04), 0 4px 12px rgba(15, 23, 42, 0.04);
	--shadow-lg:
		0 1px 3px rgba(15, 23, 42, 0.06), 0 12px 40px rgba(15, 23, 42, 0.1);
	--shadow-xl: 0 20px 60px rgba(6, 13, 26, 0.18);
	--shadow-btn: 0 4px 20px rgba(99, 179, 237, 0.28);
	--shadow-btn-hover: 0 8px 32px rgba(99, 179, 237, 0.4);

	/* ── 圆角 ── */
	--r-sm: 6px;
	--r-md: 10px;
	--r-lg: 16px;
	--r-xl: 24px;

	/* ── 动效 ── */
	--ease-out: cubic-bezier(0.16, 1, 0.3, 1);
	--ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
	--duration-fast: 0.2s;
	--duration: 0.4s;
	--duration-slow: 0.7s;

	/* ── 字体 ── */
	--font-sans:
		"Inter", "Noto Sans SC", -apple-system, BlinkMacSystemFont, "Segoe UI",
		sans-serif;
	--font-cn: "PingFang SC", "Microsoft YaHei", "Noto Sans SC", sans-serif;
	--font-en:
		-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue",
		Arial, sans-serif;
}

/* === 重置 === */
*,
*::before,
*::after {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}
html {
	scroll-behavior: smooth;
	font-size: 16px;
	-webkit-text-size-adjust: 100%;
}
body {
	font-family: var(--font-cn);
	color: var(--c-text);
	line-height: 1.75;
	background: var(--c-bg);
	overflow-x: hidden;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.container {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 0px;
}
img {
	max-width: 100%;
	height: auto;
	display: block;
}
a {
	color: inherit;
	text-decoration: none;
}

/* ── 编辑级装饰线 ── */
.editorial-rule {
	display: block;
	width: 40px;
	height: 1px;
	background: var(--gold);
	margin-bottom: 24px;
}
.editorial-rule.accent {
	background: var(--accent-from);
}
.editorial-rule.center {
	margin-left: auto;
	margin-right: auto;
}

/* === 排版工具 === */
.en {
	font-family: var(--font-en);
	letter-spacing: -0.01em;
}
.text-accent {
	background: var(--gradient-accent);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}

/* ============================================================
   TOPBAR — 完全匹配 CIPS 结构、样式与交互
   背景 #5d5d58 | Row1 35px Language Dropdown | Row2 41px topbarli
   ============================================================ */
.topbar {
	width: 100%;
	background-color: #5d5d58;
	position: relative;
	z-index: 1001;
	min-height: 41px;
	font-family: "PingFang SC", "Microsoft YaHei", "Hiragino Sans GB", sans-serif;
}
.topbar .container {
	position: relative;
	min-height: 41px;
}

/* Row 1: 35px — 地球图标 + Language 下拉，绝对定位居右 */
.topbar-grid {
	position: absolute;
	right: 32px;
	top: 0;
	z-index: 1;
	display: flex;
	align-items: center;
	height: 35px;
	font-size: 15px;
	color: #eee;
}
.topbar-left {
	font-size: 15px;
	height: 35px;
	line-height: 35px;
	display: inline-flex;
	align-items: center;
	gap: 4px;
}
.topbar-globe-icon {
	width: 16px;
	height: 16px;
	opacity: 0.85;
	flex-shrink: 0;
}

/* Language 下拉按钮 */
.topbar-lang-dropdown {
	position: relative;
	display: inline-block;
}
.topbar-lang-btn {
	background: #5d5d58;
	border: 0 none;
	color: #eee;
	font-size: 15px;
	padding: 0;
	line-height: 1;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	gap: 3px;
	font-family: inherit;
	margin-top: -2px;
}
.topbar-lang-btn:hover {
	color: #fff;
}
.topbar-lang-arrow {
	width: 10px;
	height: 10px;
	transition: transform 0.2s;
}
.topbar-lang-dropdown.open .topbar-lang-arrow {
	transform: rotate(180deg);
}

/* Language 下拉菜单 */
.topbar-lang-menu {
	position: absolute;
	top: calc(100% + 6px);
	right: 0;
	background: #fff;
	min-width: 110px;
	list-style: none;
	padding: 4px 0;
	margin: 0;
	border-radius: 4px;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.18);
	opacity: 0;
	visibility: hidden;
	transform: translateY(4px);
	transition: all 0.2s ease;
	z-index: 2000;
}
.topbar-lang-dropdown.open .topbar-lang-menu {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}
.topbar-lang-menu li a {
	display: block;
	padding: 6px 18px;
	color: #333;
	text-decoration: none;
	font-size: 14px;
	line-height: 1.6;
	transition: background 0.15s;
}
.topbar-lang-menu li a:hover {
	background: #f5f5f5;
	color: #000;
}
.topbar-lang-divider {
	height: 1px;
	background: #e8e8e8;
	margin: 3px 12px;
}

/* Row 2: topbarli — 组织归属链接 41px */
.topbarli {
	height: 41px;
	line-height: 41px;
	position: absolute;
	left: 0;
	top: 0;
}
.topbarli ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
.topbarli ul li {
	float: left;
}
.topbarli ul li a {
	display: block;
	padding: 0 20px;
	color: #eee;
	font-size: 16px;
	height: 41px;
	line-height: 41px;
	text-decoration: none;
	transition:
		background 0.2s,
		color 0.2s;
}
.topbarli ul li a:hover {
	background: #333;
	color: #ccc !important;
}
.topbarli ul li a:focus {
	outline: 0 none;
}
.topbarli ul li.current {
	background: white;
}
.topbarli ul li.current a {
	color: #333333;
}
.topbarli ul li.current a:hover {
	color: #333 !important;
	background: white;
}

/* ============================================================
   HEADER — 粘性定位，下滑隐藏，上滑显示
   ============================================================ */
.header {
	position: sticky;
	top: 0;
	z-index: 1000;
	background: rgba(255, 255, 255, 0.85);
	backdrop-filter: blur(20px) saturate(180%);
	-webkit-backdrop-filter: blur(20px) saturate(180%);
	border-bottom: 1px solid transparent;
	transition:
		transform var(--duration) var(--ease-out),
		background var(--duration) var(--ease-out),
		box-shadow var(--duration) var(--ease-out),
		border-color var(--duration) var(--ease-out);
}
.header.scrolled {
	border-bottom-color: rgba(0, 0, 0, 0.04);
	box-shadow:
		0 1px 0 rgba(15, 23, 42, 0.06),
		0 4px 16px rgba(15, 23, 42, 0.04);
}
.header.header-hidden {
	transform: translateY(-100%);
}

/* 首页深色 Header */
.header-transparent {
	background: rgba(6, 13, 26, 0.6);
	backdrop-filter: blur(16px) saturate(120%);
	-webkit-backdrop-filter: blur(16px) saturate(120%);
	border-bottom-color: rgba(255, 255, 255, 0.05);
}
.header-transparent .header-logo-zh {
	color: var(--white);
}
.header-transparent .hamburger span {
	background: var(--white);
}
.header-transparent .nav-link {
	color: rgba(255, 255, 255, 0.6);
}
.header-transparent .nav-link:hover {
	color: var(--white);
	background: rgba(255, 255, 255, 0.06);
}
.header-transparent .nav-link.active {
	color: var(--white);
}
.header-transparent .nav-link::after {
	background: var(--accent-from);
}
.header-transparent .header-lang {
	color: rgba(255, 255, 255, 0.45);
	border-color: rgba(255, 255, 255, 0.12);
}
.header-transparent .header-lang:hover {
	color: var(--white);
	border-color: rgba(255, 255, 255, 0.35);
}
.header-transparent .btn {
	box-shadow: var(--shadow-btn);
}

/* 滚动后恢复白色毛玻璃 */
.header-transparent.scrolled {
	background: rgba(255, 255, 255, 0.85);
	backdrop-filter: blur(20px) saturate(180%);
	-webkit-backdrop-filter: blur(20px) saturate(180%);
	border-bottom-color: rgba(0, 0, 0, 0.04);
	box-shadow:
		0 1px 0 rgba(15, 23, 42, 0.06),
		0 4px 16px rgba(15, 23, 42, 0.04);
}
.header-transparent.scrolled .header-logo-zh {
	color: var(--slate-900);
}
.header-transparent.scrolled .hamburger span {
	background: var(--slate-900);
}
.header-transparent.scrolled .nav-link {
	color: var(--slate-600);
}
.header-transparent.scrolled .nav-link:hover {
	color: var(--space-700);
	background: rgba(29, 58, 110, 0.04);
}
.header-transparent.scrolled .nav-link.active {
	color: var(--space-700);
}
.header-transparent.scrolled .nav-link::after {
	background: var(--gold);
}
.header-transparent.scrolled .header-lang {
	color: var(--slate-400);
	border-color: var(--slate-200);
}
.header-transparent.scrolled .header-lang:hover {
	border-color: var(--space-700);
	color: var(--space-700);
}
.header-transparent.scrolled .header-lang-btn {
	color: var(--slate-500);
	border-color: var(--slate-200);
}
.header-transparent.scrolled .header-lang-btn:hover {
	border-color: var(--space-700);
	color: var(--space-700);
}

.header-inner {
	display: flex;
	align-items: center;
	height: 120px;
	gap: 32px;
}
.header-logo {
	display: flex;
	align-items: center;
	gap: 14px;
	text-decoration: none;
	flex-shrink: 0;
}
.header-logo img {
	height: 78px;
	width: auto;
}
.header-logo-zh {
	font-size: 26px;
	font-weight: 600;
	color: var(--slate-900);
	white-space: nowrap;
	letter-spacing: 0.4px;
}
.header nav {
	margin-left: auto;
}

/* 导航 */
.nav {
	display: flex;
	align-items: center;
	gap: 0;
	list-style: none;
}
.nav > li {
	position: relative;
}
.nav-link {
	display: block;
	padding: 14px 15px;
	font-size: 18px;
	font-weight: 400;
	color: var(--slate-600);
	text-decoration: none;
	border-radius: var(--r-sm);
	transition: all var(--duration-fast);
	white-space: nowrap;
	cursor: pointer;
	position: relative;
}
.nav-link:hover {
	color: var(--space-700);
	background: rgba(29, 58, 110, 0.04);
}
.nav-link.active {
	color: var(--space-700);
	font-weight: 400;
}
.nav-link::after {
	content: "";
	position: absolute;
	bottom: 5px;
	left: 50%;
	transform: translateX(-50%) scaleX(0);
	width: 14px;
	height: 1.5px;
	background: var(--accent-from);
	transition: transform var(--duration-fast) var(--ease-out);
}
.nav-link:hover::after,
.nav-link.active::after {
	transform: translateX(-50%) scaleX(1);
}

/* 下拉菜单 */
.nav-dropdown {
	position: absolute;
	top: calc(100% + 4px);
	left: 50%;
	transform: translateX(-50%) translateY(6px);
	background: var(--white);
	min-width: 160px;
	border-radius: var(--r-md);
	box-shadow: 0 16px 48px rgba(15, 23, 42, 0.12);
	padding: 6px;
	list-style: none;
	opacity: 0;
	visibility: hidden;
	transition: all var(--duration-fast) var(--ease-out);
	z-index: 100;
	border: 1px solid var(--c-border);
}
.nav > li:hover .nav-dropdown {
	opacity: 1;
	visibility: visible;
	transform: translateX(-50%) translateY(0);
}
.nav-dropdown li a {
	display: block;
	padding: 9px 14px;
	font-size: 16px;
	color: var(--slate-600);
	text-decoration: none;
	border-radius: var(--r-sm);
	transition: all var(--duration-fast);
	white-space: nowrap;
}
.nav-dropdown li a:hover {
	color: var(--space-700);
	background: rgba(29, 58, 110, 0.04);
}

/* 头部操作区 */
.header-actions {
	display: flex;
	align-items: center;
	gap: 12px;
	flex-shrink: 0;
}
.header-lang {
	font-size: 11px;
	color: var(--slate-400);
	text-decoration: none;
	padding: 5px 9px;
	border: 1px solid var(--slate-200);
	border-radius: var(--r-sm);
	font-family: var(--font-en);
	transition: all var(--duration-fast);
	font-weight: 500;
}
.header-lang:hover {
	border-color: var(--space-700);
	color: var(--space-700);
}

/* Header 语种下拉 */
.header-lang-dropdown{position:relative;display:inline-block}
.header-lang-btn{
	display:inline-flex;align-items:center;gap:6px;
	background:none;border:1px solid var(--slate-200);
	border-radius:var(--r-sm);padding:6px 12px;
	font-size:13px;color:var(--slate-500);cursor:pointer;
	font-family:inherit;transition:all var(--duration-fast);
	line-height:1;
}
.header-lang-btn:hover{border-color:var(--space-700);color:var(--space-700)}
.header-lang-arrow{transition:transform 0.2s}
.header-lang-dropdown.open .header-lang-arrow{transform:rotate(180deg)}
.header-lang-menu{
	position:absolute;top:calc(100% + 6px);right:0;
	background:#fff;min-width:110px;
	list-style:none;padding:4px 0;margin:0;
	border-radius:6px;box-shadow:0 8px 32px rgba(15,23,42,0.14);
	opacity:0;visibility:hidden;
	transform:translateY(4px);
	transition:all 0.2s ease;
	z-index:2000;
}
.header-lang-dropdown.open .header-lang-menu{
	opacity:1;visibility:visible;transform:translateY(0);
}
.header-lang-menu li a{
	display:block;padding:7px 18px;color:#333;
	text-decoration:none;font-size:14px;line-height:1.6;
	transition:background 0.15s;
}
.header-lang-menu li a:hover{background:#f5f5f5;color:#000}
.header-lang-divider{
	height:1px;background:#e8e8e8;margin:3px 12px;
}

/* 汉堡菜单 */
.hamburger {
	display: none;
	flex-direction: column;
	justify-content: center;
	width: 24px;
	height: 16px;
	background: none;
	border: none;
	cursor: pointer;
	gap: 4px;
}
.hamburger span {
	display: block;
	height: 2px;
	width: 100%;
	background: var(--slate-900);
	border-radius: 1px;
	transition: all var(--duration-fast);
}
.hamburger.active span:nth-child(1) {
	transform: rotate(45deg) translate(4px, 4px);
}
.hamburger.active span:nth-child(2) {
	opacity: 0;
}
.hamburger.active span:nth-child(3) {
	transform: rotate(-45deg) translate(4px, -4px);
}

/* 移动端导航 */
.mobile-nav {
	position: fixed;
	top: 0;
	right: -320px;
	width: 300px;
	height: 100vh;
	background: var(--white);
	padding: 100px 28px 28px;
	transition: right var(--duration) var(--ease-out);
	z-index: 1001;
	overflow-y: auto;
	box-shadow: -8px 0 40px rgba(15, 23, 42, 0.08);
}
.mobile-nav.active {
	right: 0;
}
.mobile-nav-overlay {
	position: fixed;
	inset: 0;
	background: rgba(6, 13, 26, 0.5);
	opacity: 0;
	pointer-events: none;
	transition: opacity var(--duration) var(--ease-out);
	z-index: 1000;
}
.mobile-nav-overlay.active {
	opacity: 1;
	pointer-events: auto;
}
.mobile-nav-link {
	display: block;
	padding: 15px 0;
	font-size: 16px;
	font-weight: 400;
	color: var(--slate-900);
	text-decoration: none;
	border-bottom: 1px solid var(--c-border);
	transition: color var(--duration-fast);
}
.mobile-nav-link:hover,
.mobile-nav-link.active {
	color: var(--space-700);
}
.mobile-cta {
	margin-top: 28px;
}
.mobile-cta .btn {
	width: 100%;
}

/* 移动端语种切换 */
.mobile-lang{
	margin-top:24px;padding-top:20px;
	border-top:1px solid var(--c-border);
	display:flex;align-items:center;justify-content:center;gap:12px;
}
.mobile-lang-link{
	font-size:14px;color:var(--slate-400);text-decoration:none;
	transition:color var(--duration-fast);
}
.mobile-lang-link:hover,
.mobile-lang-link.active{color:var(--space-700);font-weight:500}
.mobile-lang-sep{color:var(--slate-200);font-size:13px}

/* ============================================================
   按钮系统
   ============================================================ */
.btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 11px 26px;
	border-radius: var(--r-sm);
	font-weight: 600;
	font-size: 13px;
	text-decoration: none;
	cursor: pointer;
	transition: all var(--duration) var(--ease-out);
	border: 1.5px solid transparent;
	font-family: var(--font-cn);
	white-space: nowrap;
	letter-spacing: 0.3px;
	line-height: 1.4;
}
.btn-primary {
	background: var(--gradient-accent);
	color: var(--white);
	box-shadow: var(--shadow-btn);
}
.btn-primary:hover {
	background: var(--gradient-accent-hover);
	transform: translateY(-2px);
	box-shadow: var(--shadow-btn-hover);
}
.btn-gold {
	background: var(--gradient-gold);
	color: var(--white);
	box-shadow: 0 4px 20px rgba(200, 169, 110, 0.28);
}
.btn-gold:hover {
	background: var(--gradient-gold-hover);
	transform: translateY(-2px);
	box-shadow: 0 8px 32px rgba(200, 169, 110, 0.4);
}
.btn-outline {
	background: transparent;
	color: var(--space-700);
	border-color: var(--slate-300);
}
.btn-outline:hover {
	background: var(--space-700);
	color: var(--white);
	border-color: var(--space-700);
	transform: translateY(-2px);
}
.btn-outline-white {
	background: transparent;
	color: var(--white);
	border-color: rgba(255, 255, 255, 0.2);
}
.btn-outline-white:hover {
	background: var(--white);
	color: var(--space-900);
	border-color: var(--white);
	transform: translateY(-2px);
}
.btn-lg {
	padding: 16px 40px;
	font-size: 15px;
	border-radius: var(--r-md);
}
.btn:focus-visible {
	outline: 2px solid var(--accent-from);
	outline-offset: 2px;
}

/* ============================================================
   HERO — 非对称双栏布局 · 科技编辑风
   ============================================================ */
.hero {
	position: relative;
	min-height: calc(100vh - 120px);
	overflow: hidden;
	background: var(--space-950);
}
.hero-slides {
	position: absolute;
	inset: 0;
}
.hero-slide {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	opacity: 0;
	transition: opacity 1.2s var(--ease-in-out);
	z-index: 1;
}
.hero-slide.active {
	opacity: 1;
	z-index: 2;
}
.hero-slide-bg {
	position: absolute;
	inset: 0;
}
.hero-slide-bg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
}
.hero-slide-overlay {
	position: absolute;
	inset: 0;
	z-index: 2;
	background: var(--gradient-hero-overlay);
}
/* .hero-slide-overlay::after{
    content:'';position:absolute;inset:0;opacity:0.1;
    background-image:
        linear-gradient(90deg,rgba(255,255,255,0.3) 1px,transparent 1px),
        linear-gradient(180deg,rgba(255,255,255,0.3) 1px,transparent 1px);
    background-size:80px 80px;
} */
/* ── 环境光效（蓝紫 + 金色微光）── */
.hero-ambient-glow {
	position: absolute;
	inset: 0;
	z-index: 3;
	pointer-events: none;
}
.hero-ambient-glow::before {
	content: "";
	position: absolute;
	top: -30%;
	right: -15%;
	width: 70%;
	height: 100%;
	background: radial-gradient(
		ellipse at center,
		rgba(99, 179, 237, 0.08) 0%,
		transparent 60%
	);
}
.hero-ambient-glow::after {
	content: "";
	position: absolute;
	bottom: -20%;
	left: -10%;
	width: 50%;
	height: 70%;
	background: radial-gradient(
		ellipse at center,
		rgba(129, 140, 248, 0.05) 0%,
		transparent 60%
	);
}

/* ── 科技网格线 ── */
.hero-grid-lines {
	position: absolute;
	inset: 0;
	z-index: 3;
	pointer-events: none;
	opacity: 0.08;
	background-image:
		linear-gradient(
			0deg,
			transparent 0%,
			rgba(99, 179, 237, 0.9) 1px,
			transparent 1px
		),
		linear-gradient(
			90deg,
			transparent 0%,
			rgba(99, 179, 237, 0.9) 1px,
			transparent 1px
		);
	background-size:
		100px 100px,
		140px 140px;
	animation: grid-drift 24s linear infinite;
}
@keyframes grid-drift {
	0% {
		transform: translate(0, 0);
	}
	100% {
		transform: translate(100px, 100px);
	}
}

/* ── Hero 内容：居中单栏 ── */
.hero-content {
	position: relative;
	z-index: 5;
	text-align: center;
	max-width: 800px;
	margin: 0 auto;
	padding: 0 32px;
}

/* ── 日期标签 ── */
.hero-kicker {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	font-size: 11px;
	color: var(--accent-from);
	font-weight: 600;
	letter-spacing: 5px;
	text-transform: uppercase;
	margin-bottom: 32px;
	padding: 6px 18px;
	border: 1px solid rgba(99, 179, 237, 0.18);
	border-radius: 100px;
	background: rgba(99, 179, 237, 0.05);
	backdrop-filter: blur(8px);
	font-family: var(--font-en);
}
.hero-kicker::before {
	content: "";
	width: 5px;
	height: 5px;
	background: var(--accent-from);
	border-radius: 50%;
	box-shadow: 0 0 10px var(--accent-from);
	animation: kicker-pulse 2.4s ease-in-out infinite;
}
@keyframes kicker-pulse {
	0%,
	100% {
		box-shadow: 0 0 6px var(--accent-from);
	}
	50% {
		box-shadow:
			0 0 18px var(--accent-from),
			0 0 36px rgba(99, 179, 237, 0.4);
	}
}

/* ── 主标题 ── */
.hero-title {
	font-size: 58px;
	font-weight: 700;
	color: var(--white);
	line-height: 1.12;
	margin-bottom: 18px;
	letter-spacing: -0.5px;
}
.hero-title-accent {
	background: linear-gradient(135deg, var(--accent-from), var(--accent-to));
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}
.hero-title-en {
	font-size: 15px;
	color: rgba(255, 255, 255, 0.38);
	font-family: var(--font-en);
	font-weight: 400;
	margin-bottom: 10px;
	letter-spacing: 2px;
}
.hero-location {
	font-size: 14px;
	color: rgba(255, 255, 255, 0.5);
	margin-bottom: 40px;
	font-weight: 400;
	display: flex;
	align-items: center;
	gap: 8px;
	justify-content: center;
}
.hero-location::before {
	/* content:'';width:1px;height:12px; */
	background: rgba(255, 255, 255, 0.15);
}
.hero-buttons {
	display: flex;
	gap: 14px;
	flex-wrap: wrap;
	justify-content: center;
}

/* 第2、3屏背景 */
.hero-slide:nth-child(2) .hero-slide-bg {
	background: linear-gradient(
		160deg,
		var(--space-950) 0%,
		var(--space-800) 45%,
		var(--space-700) 100%
	);
}
.hero-slide:nth-child(2) .hero-slide-bg::before {
	content: "";
	position: absolute;
	inset: 0;
	opacity: 0.3;
	background-image: radial-gradient(
		rgba(99, 179, 237, 0.06) 1px,
		transparent 1px
	);
	background-size: 50px 50px;
}
.hero-slide:nth-child(3) .hero-slide-bg {
	background: linear-gradient(
		160deg,
		var(--space-950) 0%,
		var(--space-800) 45%,
		var(--space-700) 100%
	);
}
.hero-slide:nth-child(3) .hero-slide-bg::before {
	content: "";
	position: absolute;
	inset: 0;
	opacity: 0.2;
	background-image:
		linear-gradient(90deg, rgba(99, 179, 237, 0.04) 1px, transparent 1px),
		linear-gradient(180deg, rgba(99, 179, 237, 0.04) 1px, transparent 1px);
	background-size: 70px 70px;
}

/* Hero 导航点 */
.hero-nav {
	position: absolute;
	bottom: 48px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 5;
	display: flex;
	gap: 10px;
}
.hero-dot {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	border: 1.5px solid rgba(255, 255, 255, 0.2);
	background: transparent;
	cursor: pointer;
	transition: all var(--duration-fast);
}
.hero-dot.active,
.hero-dot:hover {
	background: var(--accent-from);
	border-color: var(--accent-from);
	box-shadow: 0 0 10px rgba(99, 179, 237, 0.5);
}

/* Hero 箭头 */
.hero-arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 5;
	width: 56px;
	height: 72px;
	background: none;
	border: none;
	color: rgba(255, 255, 255, 0.35);
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: color var(--duration-fast);
	font-size: 40px;
	line-height: 1;
}
.hero-arrow:hover {
	color: var(--white);
}
.hero-arrow-prev {
	left: 4px;
}
.hero-arrow-next {
	right: 4px;
}

/* 滚动指示器 */
.hero-scroll {
	position: absolute;
	bottom: 20px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 5;
	color: rgba(255, 255, 255, 0.25);
	animation: scroll-bounce 2s ease-in-out infinite;
	cursor: pointer;
}
@keyframes scroll-bounce {
	0%,
	100% {
		transform: translateX(-50%) translateY(0);
	}
	50% {
		transform: translateX(-50%) translateY(6px);
	}
}

/* Hero 底部过渡线 */
.hero::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 1px;
	z-index: 6;
	background: linear-gradient(
		90deg,
		transparent,
		rgba(99, 179, 237, 0.25),
		transparent
	);
}

/* ============================================================
   STATS — 编辑级数字栏
   ============================================================ */
.stats {
	padding: 0;
	position: relative;
	z-index: 10;
	background: var(--white);
	border-bottom: 1px solid var(--c-border);
}
.stats-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
}
.stat-item {
	padding: 52px 28px 44px;
	text-align: center;
	position: relative;
	transition: background var(--duration);
	overflow: hidden;
}
.stat-item:not(:last-child) {
	border-right: 1px solid var(--c-border-light);
}

/* 背景水印数字 */
.stat-item::before {
	content: attr(data-index);
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	font-size: 120px;
	font-weight: 700;
	font-family: var(--font-en);
	color: var(--slate-100);
	z-index: 0;
	line-height: 1;
	pointer-events: none;
}

/* hover 底部蓝紫线 */
.stat-item::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 0;
	height: 2px;
	background: var(--gradient-accent);
	transition: width var(--duration) var(--ease-out);
}
.stat-item:hover {
	background: var(--slate-50);
}
.stat-item:hover::after {
	width: 48px;
}
.stat-number {
	position: relative;
	z-index: 1;
	font-size: 52px;
	font-weight: 700;
	font-family: var(--font-en);
	margin-bottom: 6px;
	line-height: 1;
	letter-spacing: -0.02em;
	background: linear-gradient(
		180deg,
		var(--space-900) 0%,
		var(--space-600) 100%
	);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}
.stat-label {
	position: relative;
	z-index: 1;
	font-size: 12px;
	color: var(--c-text-secondary);
	font-weight: 400;
	letter-spacing: 1.5px;
}

/* ============================================================
   区域布局
   ============================================================ */
.section-header {
	text-align: center;
	margin-bottom: 72px;
}
.section-label {
	font-size: 10px;
	font-weight: 600;
	color: var(--accent-from);
	text-transform: uppercase;
	letter-spacing: 6px;
	margin-bottom: 20px;
	font-family: var(--font-en);
}
.section-title {
	font-size: 40px;
	font-weight: 600;
	color: var(--slate-900);
	margin-bottom: 16px;
	letter-spacing: -0.3px;
	line-height: 1.15;
}
.section-subtitle {
	font-size: 15px;
	color: var(--c-text-secondary);
	max-width: 540px;
	margin: 0 auto;
	font-weight: 400;
}

/* ============================================================
   倒计时 — 大会开幕倒计时
   ============================================================ */
.countdown {
	padding: 100px 0;
	background: var(--c-bg);
	position: relative;
	overflow: hidden;
}
.countdown-header {
	text-align: center;
	margin-bottom: 52px;
	position: relative;
	z-index: 1;
}
.countdown .section-label {
	color: var(--accent-from);
}
.countdown .section-title {
	color: var(--c-text);
}
.countdown-grid {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 20px;
	position: relative;
	z-index: 1;
}
.countdown-item {
	text-align: center;
}
.countdown-number {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 110px;
	height: 110px;
	background: var(--white);
	border: 1px solid var(--c-border);
	border-radius: var(--r-lg);
	box-shadow: var(--shadow-sm);
	overflow: hidden;
}
.countdown-digit {
	display: block;
	font-size: 48px;
	font-weight: 700;
	font-family: var(--font-en);
	color: var(--space-700);
	letter-spacing: 2px;
}
.countdown-digit.flip {
	animation: countFlip 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}
@keyframes countFlip {
	0% {
		transform: translateY(0);
		opacity: 1;
	} /* 当前数字 */
	35% {
		transform: translateY(28px);
		opacity: 0;
	} /* 旧数字向下消失 */
	65% {
		transform: translateY(-22px);
		opacity: 0;
	} /* 新数字从上方准备 */
	100% {
		transform: translateY(0);
		opacity: 1;
	} /* 新数字落位 */
}
.countdown-label {
	margin-top: 12px;
	font-size: 14px;
	color: var(--c-text-secondary);
	letter-spacing: 2px;
	font-weight: 400;
}
.countdown-separator {
	font-size: 40px;
	font-weight: 300;
	color: var(--slate-300);
	padding-bottom: 28px;
}

/* ============================================================
   大会亮点 — 2×2 编辑卡片
   ============================================================ */
.highlights {
	padding: 140px 0;
	background: var(--c-bg);
	position: relative;
}
.highlights-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 1px;
	background: var(--c-border-light);
}
.highlight-card {
	background: var(--white);
	padding: 52px 44px 48px;
	position: relative;
	transition: all var(--duration) var(--ease-out);
	cursor: default;
	overflow: hidden;
}

/* 左上角编号 */
.highlight-card[data-n]::before {
	content: attr(data-n);
	position: absolute;
	top: 28px;
	right: 36px;
	font-size: 56px;
	font-weight: 700;
	font-family: var(--font-en);
	color: var(--slate-100);
	line-height: 1;
	pointer-events: none;
	transition: color var(--duration);
}

/* hover 左侧装饰条 */
.highlight-card::after {
	content: "";
	position: absolute;
	left: 0;
	top: 20%;
	height: 60%;
	width: 2px;
	background: var(--gradient-accent);
	transform: scaleY(0);
	transform-origin: top;
	transition: transform var(--duration) var(--ease-out);
}
.highlight-card:hover {
	background: var(--slate-50);
}
.highlight-card:hover::after {
	transform: scaleY(1);
}
.highlight-card[data-n]:hover::before {
	color: var(--slate-200);
}
.highlight-card:hover .highlight-icon {
	transform: translateY(-3px);
}
.highlight-card:hover .highlight-icon svg {
	color: var(--accent-from);
}

.highlight-icon {
	width: 48px;
	height: 48px;
	margin-bottom: 28px;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: transform var(--duration) var(--ease-out);
	position: relative;
	z-index: 1;
}
.highlight-icon svg {
	width: 26px;
	height: 26px;
	color: var(--space-700);
	transition: color var(--duration-fast);
}
.highlight-card h3 {
	font-size: 18px;
	font-weight: 600;
	color: var(--slate-900);
	margin-bottom: 10px;
	letter-spacing: 0.3px;
	position: relative;
	z-index: 1;
}
.highlight-card p {
	font-size: 14px;
	color: var(--c-text-secondary);
	line-height: 1.8;
	max-width: 320px;
	font-weight: 400;
	position: relative;
	z-index: 1;
}

/* ============================================================
   关于大会 — 非对称图文
   ============================================================ */
.about-summary {
	padding: 120px 0;
	background: var(--c-bg-white);
}
.about-summary-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 80px;
	align-items: center;
}
.about-summary-text .section-label {
	margin-bottom: 20px;
}
.about-summary-text .section-title {
	text-align: left;
	margin-bottom: 24px;
}
.about-summary-text p {
	font-size: 15px;
	color: var(--c-text-secondary);
	margin-bottom: 20px;
	line-height: 1.85;
	font-weight: 400;
}
.about-summary-visual {
	position: relative;
	height: 380px;
	background: linear-gradient(
		160deg,
		var(--space-900) 0%,
		var(--space-800) 50%,
		#0f1d3a 100%
	);
	border-radius: var(--r-xl);
	overflow: hidden;
	box-shadow: var(--shadow-xl);
	display: flex;
	align-items: center;
	justify-content: center;
}
/* 点阵纹理 */
.about-summary-visual::before {
	content: "";
	position: absolute;
	inset: 0;
	opacity: 0.2;
	background-image: radial-gradient(
		rgba(255, 255, 255, 0.08) 1px,
		transparent 1px
	);
	background-size: 36px 36px;
}
/* 蓝紫发光带 */
.about-summary-visual::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	height: 1px;
	background: linear-gradient(
		90deg,
		transparent,
		rgba(99, 179, 237, 0.35),
		rgba(129, 140, 248, 0.35),
		transparent
	);
	transform: translateY(-50%);
}
.about-summary-visual-inner {
	position: relative;
	text-align: center;
	color: var(--white);
	padding: 40px;
}
.about-summary-visual-inner .en {
	font-family: var(--font-en);
	font-size: 52px;
	font-weight: 700;
	opacity: 0.06;
	margin-bottom: 6px;
	letter-spacing: 4px;
}
.about-summary-visual-inner .zh {
	font-size: 24px;
	font-weight: 300;
	letter-spacing: 10px;
	opacity: 0.8;
}

/* ============================================================
   新闻动态 — 非对称三栏
   ============================================================ */
.news-preview {
	padding: 120px 0;
	background: var(--white);
}
.news-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 28px;
}
.news-card {
	background: var(--white);
	border-radius: var(--r-lg);
	overflow: hidden;
	border: 1px solid var(--c-border-light);
	transition: all var(--duration) var(--ease-out);
	position: relative;
}
.news-card:hover {
	transform: translateY(-4px);
	box-shadow: var(--shadow-lg);
	border-color: rgba(99, 179, 237, 0.12);
}
.news-card-image-link {
	display: block;
}
.news-card-image {
	height: 180px;
	background: var(--gradient-card-dark);
	position: relative;
	overflow: hidden;
}
.news-card-image::after {
	content: "";
	position: absolute;
	inset: 0;
	opacity: 0.1;
	background-image:
		linear-gradient(90deg, rgba(255, 255, 255, 0.3) 1px, transparent 1px),
		linear-gradient(180deg, rgba(255, 255, 255, 0.3) 1px, transparent 1px);
	background-size: 20px 20px;
}
.news-card-body {
	padding: 26px 26px 30px;
}
.news-card-meta {
	display: flex;
	gap: 12px;
	align-items: center;
	margin-bottom: 14px;
	font-size: 11px;
}
.news-card-date {
	color: var(--c-text-light);
	font-family: var(--font-en);
	font-weight: 400;
	font-size: 11px;
}
.news-card-tag {
	color: var(--accent-from);
	font-weight: 600;
	font-size: 10px;
	background: rgba(99, 179, 237, 0.07);
	padding: 2px 10px;
	border-radius: 100px;
	letter-spacing: 0.5px;
	text-transform: uppercase;
	font-family: var(--font-en);
}
.news-card-title {
	font-size: 17px;
	font-weight: 600;
	color: var(--slate-900);
	margin-bottom: 8px;
	line-height: 1.4;
}
.news-card-excerpt {
	font-size: 14px;
	color: var(--c-text-secondary);
	line-height: 1.7;
	margin-bottom: 16px;
	font-weight: 400;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.news-card-link {
	font-size: 13px;
	font-weight: 600;
	color: var(--space-700);
	text-decoration: none;
	transition: color var(--duration-fast);
	display: inline-flex;
	align-items: center;
	gap: 4px;
}
.news-card-link:hover {
	color: var(--accent-from);
}
.news-footer {
	text-align: center;
	margin-top: 52px;
}

/* ============================================================
   CTA — 行动号召
   ============================================================ */
.cta {
	padding: 150px 0;
	text-align: center;
	position: relative;
	overflow: hidden;
	background: var(--space-950);
}
/* 视差背景层 */
.cta-parallax-bg {
	position: absolute;
	top: -15%;
	left: -5%;
	width: 110%;
	height: 130%;
	background: url("../images/cta-bg.jpg") center center / cover no-repeat;
	will-change: transform;
	z-index: 0;
}
/* 深色叠加层 — 保证文字可读性 */
.cta-parallax-overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(
		180deg,
		rgba(6, 13, 26, 0.6) 0%,
		rgba(6, 13, 26, 0.45) 50%,
		rgba(6, 13, 26, 0.6) 100%
	);
	z-index: 1;
	pointer-events: none;
}
/* 顶部金色细线 — 与深色 footer 形成边界 */
.cta::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 1px;
	background: linear-gradient(
		90deg,
		transparent,
		rgba(200, 169, 110, 0.35),
		transparent
	);
	pointer-events: none;
	z-index: 2;
}
.cta-content {
	position: relative;
	z-index: 2;
}
.cta h2 {
	font-size: 44px;
	font-weight: 600;
	color: var(--white);
	margin-bottom: 16px;
	letter-spacing: -0.3px;
}
.cta p {
	font-size: 16px;
	color: var(--slate-300);
	margin-bottom: 44px;
	font-weight: 400;
}

/* ============================================================
   页脚
   ============================================================ */
.footer {
	background: var(--space-950);
	color: var(--white);
	padding: 80px 0 0;
	position: relative;
}
.footer::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 1px;
	background: linear-gradient(
		90deg,
		transparent,
		rgba(99, 179, 237, 0.35),
		transparent
	);
}
.footer-grid {
	display: grid;
	grid-template-columns: 2fr 1fr 1fr 1.5fr;
	gap: 52px;
	padding-bottom: 52px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.04);
}
.footer-info .footer-logo {
	height: 40px;
	margin-bottom: 18px;
	opacity: 0.85;
}
.footer-info p {
	font-size: 13px;
	color: rgba(255, 255, 255, 0.6);
	line-height: 1.8;
	font-weight: 400;
}
.footer-col h4 {
	font-size: 13px;
	font-weight: 600;
	margin-bottom: 22px;
	color: rgba(255, 255, 255, 0.7);
	letter-spacing: 0.5px;
}
.footer-col ul {
	list-style: none;
}
.footer-col ul li {
	margin-bottom: 12px;
}
.footer-col ul li a {
	color: rgba(255, 255, 255, 0.6);
	text-decoration: none;
	font-size: 13px;
	font-weight: 400;
	transition: color var(--duration-fast);
}
.footer-col ul li a:hover {
	color: var(--accent-from);
}
.footer-contact-item {
	display: flex;
	gap: 12px;
	align-items: flex-start;
	margin-bottom: 14px;
	font-size: 13px;
	color: rgba(255, 255, 255, 0.6);
	font-weight: 400;
}
.footer-contact-item svg {
	flex-shrink: 0;
	margin-top: 2px;
	opacity: 0.25;
}
.footer-bottom {
	padding: 24px 0;
	text-align: center;
	font-size: 11px;
	color: rgba(255, 255, 255, 0.4);
	font-weight: 400;
}

/* ============================================================
   内页 — 共享样式
   ============================================================ */

/* 页面横幅 */
.page-banner {
	padding: 120px 0;
	background: var(--gradient-cta);
	text-align: center;
	position: relative;
	overflow: hidden;
}
/* 背景图片层 */
.page-banner-bg {
	position: absolute;
	inset: 0;
	background: center center / cover no-repeat;
	z-index: 0;
}
/* 深色叠加层 — 保证文字可读 */
.page-banner-overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(
		180deg,
		rgba(6, 13, 26, 0.65) 0%,
		rgba(6, 13, 26, 0.5) 100%
	);
	z-index: 1;
	pointer-events: none;
}
.page-banner::before {
	content: "";
	position: absolute;
	inset: 0;
	opacity: 0.2;
	background-image: radial-gradient(
		rgba(99, 179, 237, 0.05) 1px,
		transparent 1px
	);
	background-size: 44px 44px;
	z-index: 2;
	pointer-events: none;
}
.page-banner::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 1px;
	background: linear-gradient(
		90deg,
		transparent,
		rgba(99, 179, 237, 0.35),
		transparent
	);
	z-index: 2;
	pointer-events: none;
}
.page-banner-title {
	font-size: 42px;
	font-weight: 600;
	color: var(--white);
	position: relative;
	z-index: 3;
	margin-bottom: 14px;
	letter-spacing: -0.3px;
}
.page-banner-subtitle {
	font-size: 15px;
	color: rgba(255, 255, 255, 0.4);
	position: relative;
	z-index: 3;
	font-weight: 400;
}
.page-banner .breadcrumb {
	position: relative;
	z-index: 3;
	font-size: 12px;
	color: var(--accent-from);
	margin-bottom: 22px;
	font-family: var(--font-en);
	letter-spacing: 1px;
}
.page-banner .breadcrumb a {
	color: rgba(255, 255, 255, 0.35);
	text-decoration: none;
	transition: color var(--duration-fast);
}
.page-banner .breadcrumb a:hover {
	color: var(--white);
}
.page-banner .breadcrumb span {
	margin: 0 8px;
	color: rgba(255, 255, 255, 0.15);
}

/* 缩短版 banner（仅面包屑，无标题） */
.page-banner-sm {
	padding: 100px 0 52px;
}
.page-banner-sm .breadcrumb {
	margin-bottom: 0;
}

.page-content {
	padding: 80px 0;
}
.page-section {
	margin-bottom: 80px;
}
.page-section:last-child {
	margin-bottom: 0;
}
.content-grid-2 {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 52px;
	align-items: start;
}
.content-grid-3 {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 28px;
}
.content-grid-4 {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 28px;
}

/* 内页通用卡片 */
.card {
	background: var(--white);
	border-radius: var(--r-lg);
	padding: 36px 30px;
	border: 1px solid var(--c-border-light);
	box-shadow: var(--shadow-md);
	transition: all var(--duration) var(--ease-out);
}
.card:hover {
	box-shadow: var(--shadow-lg);
	transform: translateY(-2px);
}

/* ============================================================
   关于IIPC页
   ============================================================ */
.about-hero-text {
	max-width: 680px;
	margin: 0 auto;
	font-size: 15px;
	color: var(--c-text-secondary);
	line-height: 2;
	font-weight: 400;
}
.about-hero-text p {
	margin-bottom: 18px;
}

/* 形式卡片 */
.format-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1px;
	background: var(--c-border-light);
}
.format-card {
	background: var(--white);
	padding: 48px 30px 44px;
	text-align: center;
	position: relative;
	transition: all var(--duration) var(--ease-out);
	cursor: default;
	overflow: hidden;
}
.format-card[data-n]::before {
	content: attr(data-n);
	position: absolute;
	top: 24px;
	right: 28px;
	font-size: 48px;
	font-weight: 700;
	font-family: var(--font-en);
	color: var(--slate-100);
	line-height: 1;
	pointer-events: none;
	transition: color var(--duration);
}
.format-card::after {
	content: "";
	position: absolute;
	left: 0;
	top: 15%;
	height: 70%;
	width: 2px;
	background: var(--gradient-accent);
	transform: scaleY(0);
	transform-origin: top;
	transition: transform var(--duration) var(--ease-out);
}
.format-card:hover {
	background: var(--slate-50);
}
.format-card:hover::after {
	transform: scaleY(1);
}
.format-card[data-n]:hover::before {
	color: var(--slate-200);
}
.format-card:hover .format-icon {
	transform: translateY(-2px);
}
.format-icon {
	width: 56px;
	height: 56px;
	margin: 0 auto 24px;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: transform var(--duration) var(--ease-out);
	position: relative;
	z-index: 1;
}
.format-icon svg {
	width: 28px;
	height: 28px;
	color: var(--space-700);
}
.format-card h3 {
	font-size: 17px;
	font-weight: 600;
	color: var(--slate-900);
	margin-bottom: 10px;
	position: relative;
	z-index: 1;
}
.format-card p {
	font-size: 14px;
	color: var(--c-text-secondary);
	line-height: 1.7;
	max-width: 260px;
	margin: 0 auto;
	font-weight: 400;
	position: relative;
	z-index: 1;
}

/* 价值列表 */
.value-list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 14px;
}
.value-item {
	display: flex;
	gap: 16px;
	align-items: flex-start;
	padding: 22px;
	background: var(--c-bg);
	border-radius: var(--r-md);
	transition: background var(--duration-fast);
}
.value-item:hover {
	background: var(--slate-100);
}
.value-item svg {
	flex-shrink: 0;
	color: var(--accent-from);
	margin-top: 2px;
}
.value-item h4 {
	font-size: 15px;
	font-weight: 600;
	color: var(--slate-900);
	margin-bottom: 4px;
}
.value-item p {
	font-size: 13px;
	color: var(--c-text-secondary);
	line-height: 1.7;
	font-weight: 400;
}
.value-item > p {
	font-size: 15px;
	color: var(--slate-700);
	line-height: 1.7;
}

/* 参会群体 */
.audience-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 1px;
	background: var(--c-border-light);
}
.audience-card {
	background: var(--white);
	padding: 40px 22px 36px;
	text-align: center;
	position: relative;
	transition: all var(--duration) var(--ease-out);
	overflow: hidden;
}
.audience-card::after {
	content: "";
	position: absolute;
	left: 0;
	top: 15%;
	height: 70%;
	width: 2px;
	background: var(--gradient-accent);
	transform: scaleY(0);
	transform-origin: top;
	transition: transform var(--duration) var(--ease-out);
}
.audience-card:hover {
	background: var(--slate-50);
}
.audience-card:hover::after {
	transform: scaleY(1);
}
.audience-card .num {
	font-size: 11px;
	color: var(--accent-from);
	font-weight: 600;
	letter-spacing: 2px;
	margin-bottom: 12px;
	font-family: var(--font-en);
	position: relative;
	z-index: 1;
}
.audience-card h4 {
	font-size: 16px;
	font-weight: 600;
	color: var(--slate-900);
	margin-bottom: 6px;
	position: relative;
	z-index: 1;
}
.audience-card p {
	font-size: 13px;
	color: var(--c-text-secondary);
	line-height: 1.7;
	font-weight: 400;
	position: relative;
	z-index: 1;
}

/* ============================================================
   会议日程页
   ============================================================ */
.schedule-tabs {
	display: flex;
	justify-content: center;
	gap: 8px;
	margin-bottom: 52px;
}
.schedule-tab {
	padding: 13px 36px;
	background: var(--white);
	border: 1.5px solid var(--slate-200);
	border-radius: 100px;
	font-size: 14px;
	font-weight: 400;
	color: var(--c-text-secondary);
	cursor: pointer;
	transition: all var(--duration-fast);
	font-family: var(--font-cn);
}
.schedule-tab:hover {
	border-color: var(--space-700);
	color: var(--space-700);
}
.schedule-tab.active {
	background: var(--gradient-accent);
	color: var(--white);
	border-color: transparent;
	box-shadow: var(--shadow-btn);
}
.schedule-list {
	max-width: 680px;
	margin: 0 auto;
	display: none;
}
.schedule-list.active {
	display: block;
}
.schedule-item {
	display: flex;
	gap: 36px;
	padding: 28px 0;
	border-bottom: 1px solid var(--c-border-light);
}
.schedule-item:last-child {
	border-bottom: none;
}
.schedule-time {
	min-width: 140px;
	font-size: 14px;
	font-weight: 600;
	color: var(--space-700);
	padding-top: 2px;
	font-family: var(--font-en);
}
.schedule-detail h4 {
	font-size: 17px;
	font-weight: 600;
	color: var(--slate-900);
	margin-bottom: 6px;
}
.schedule-detail .speaker {
	font-size: 14px;
	color: var(--c-text-secondary);
	font-weight: 400;
}
.schedule-detail .venue {
	font-size: 12px;
	color: var(--c-text-light);
	margin-top: 4px;
	font-weight: 400;
}

/* ============================================================
   组织机构页
   ============================================================ */
.org-card {
	background: var(--white);
	border-radius: var(--r-lg);
	overflow: hidden;
	border: 1px solid var(--c-border-light);
	box-shadow: var(--shadow-md);
	margin-bottom: 36px;
	transition: box-shadow var(--duration);
}
.org-card:hover {
	box-shadow: var(--shadow-lg);
}
.org-card-header {
	padding: 32px;
	border-bottom: 1px solid var(--c-border-light);
	display: flex;
	align-items: center;
	gap: 22px;
}
.org-card-logo {
	width: 72px;
	height: 72px;
	background: var(--gradient-card-dark);
	border-radius: var(--r-lg);
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--white);
	font-size: 10px;
	font-weight: 600;
	text-align: center;
	flex-shrink: 0;
	font-family: var(--font-en);
	line-height: 1.3;
	box-shadow: 0 6px 20px rgba(6, 13, 26, 0.15);
}
.org-card-name {
	font-size: 19px;
	font-weight: 600;
	color: var(--slate-900);
	margin-bottom: 4px;
}
.org-card-subtitle {
	font-size: 13px;
	color: var(--c-text-light);
	font-weight: 400;
}
.org-card-body {
	padding: 32px;
}
.org-card-body p {
	font-size: 14px;
	color: var(--c-text-secondary);
	line-height: 1.8;
	margin-bottom: 22px;
	font-weight: 400;
}
.org-honors {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 8px;
	list-style: none;
}
.org-honors li {
	font-size: 13px;
	color: var(--c-text-secondary);
	padding: 10px 14px;
	font-weight: 400;
	background: var(--c-bg);
	border-radius: var(--r-sm);
	line-height: 1.6;
}
/* 直接针对 li 内部的 p 标签设置样式 */
.org-honors li p {
	font-size: 13px !important;
	color: var(--c-text-secondary);
	padding: 0;
	font-weight: 400;
	background: transparent;
	border-radius: 0;
	line-height: 1.6;
	margin-bottom: 0;
}

/* 主办单位双列布局 */
.org-co-host {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 28px;
}
.org-co-host-item {
	padding: 20px;
	background: var(--c-bg);
	border-radius: var(--r-md);
}
.org-co-host-item h4 {
	font-size: 16px;
	margin-bottom: 12px;
	font-weight: 600;
}
.org-co-host-item > p {
	font-size: 14px;
	color: var(--c-text-secondary);
	line-height: 1.8;
	margin-bottom: 16px;
}
.org-co-host-item .org-honors {
	grid-template-columns: 1fr;
}
@media (max-width: 768px) {
	.org-co-host {
		grid-template-columns: 1fr;
		gap: 16px;
	}
}

/* ============================================================
   注册报名页
   ============================================================ */
.service-tabs {
	display: flex;
	justify-content: center;
	gap: 10px;
	margin-bottom: 52px;
	flex-wrap: wrap;
}
.service-tab {
	padding: 15px 40px;
	background: var(--white);
	border: 1.5px solid var(--slate-200);
	border-radius: var(--r-md);
	font-size: 15px;
	font-weight: 400;
	color: var(--c-text-secondary);
	cursor: pointer;
	transition: all var(--duration-fast);
	font-family: var(--font-cn);
}
.service-tab:hover {
	border-color: var(--space-700);
	color: var(--space-700);
}
.service-tab.active {
	background: var(--gradient-accent);
	color: var(--white);
	border-color: transparent;
	box-shadow: var(--shadow-btn);
}
.service-panel {
	display: none;
}
.service-panel.active {
	display: block;
}
.service-panel-inner {
	background: var(--white);
	border-radius: var(--r-lg);
	padding: 48px;
	box-shadow: var(--shadow-md);
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 52px;
}
.service-panel-info h3 {
	font-size: 21px;
	font-weight: 600;
	color: var(--slate-900);
	margin-bottom: 18px;
}
.service-panel-info p {
	font-size: 14px;
	color: var(--c-text-secondary);
	line-height: 1.8;
	margin-bottom: 12px;
	font-weight: 400;
}
.service-panel-info ul {
	list-style: none;
}
.service-panel-info ul li {
	font-size: 14px;
	color: var(--c-text-secondary);
	font-weight: 400;
	padding: 6px 0 6px 20px;
	position: relative;
}
.service-panel-info ul li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 13px;
	width: 5px;
	height: 5px;
	background: var(--accent-from);
	border-radius: 50%;
}

/* 表单 */
.form-group {
	margin-bottom: 22px;
}
.form-group label {
	display: block;
	font-size: 13px;
	font-weight: 600;
	color: var(--slate-900);
	margin-bottom: 7px;
}
.form-group input,
.form-group select,
.form-group textarea {
	width: 100%;
	padding: 13px 15px;
	border: 1.5px solid var(--slate-200);
	border-radius: var(--r-sm);
	font-size: 14px;
	font-family: var(--font-cn);
	font-weight: 400;
	transition: border-color var(--duration-fast);
	background: var(--c-bg);
	color: var(--c-text);
}
.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {
	outline: none;
	border-color: var(--accent-from);
	background: var(--white);
	box-shadow: 0 0 0 3px rgba(99, 179, 237, 0.1);
}
.form-group input:invalid:not(:placeholder-shown),
.form-group textarea:invalid:not(:placeholder-shown) {
	border-color: #ef4444;
	background: #fef2f2;
}
.form-group input:invalid:not(:placeholder-shown):focus,
.form-group textarea:invalid:not(:placeholder-shown):focus {
	box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.12);
}
.form-group .required {
	color: #ef4444;
	font-weight: 400;
	margin-left: 2px;
}
.form-group .error-msg {
	display: none;
	font-size: 12px;
	color: #ef4444;
	margin-top: 4px;
}
.form-group.has-error .error-msg {
	display: block;
}

/* ============================================================
   新闻中心页
   ============================================================ */
.news-layout {
	display: grid;
	grid-template-columns: 1fr 260px;
	gap: 52px;
	align-items: start;
}

/* ── 资讯列表 — 图文横排卡片 ── */
.news-card-h {
	display: flex;
	gap: 0;
	background: var(--white);
	border-radius: var(--r-lg);
	overflow: hidden;
	border: 1px solid var(--c-border-light);
	box-shadow: var(--shadow-sm);
	transition:
		box-shadow var(--duration),
		transform var(--duration);
	margin-bottom: 20px;
}
.news-card-h:hover {
	box-shadow: var(--shadow-lg);
	transform: translateY(-2px);
}
.news-card-h-thumb {
	display: block;
	width: 220px;
	min-height: 160px;
	flex-shrink: 0;
	position: relative;
	overflow: hidden;
	background: var(--gradient-card-dark);
}
.news-card-h-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	position: absolute;
	inset: 0;
	transition: transform var(--duration-slow) var(--ease-out);
}
.news-card-h:hover .news-card-h-thumb img {
	transform: scale(1.05);
}
.news-card-h-body {
	flex: 1;
	padding: 22px 26px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.news-card-h-meta {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 10px;
}
.news-card-h-tag {
	font-size: 10px;
	color: var(--accent-from);
	font-weight: 600;
	background: rgba(99, 179, 237, 0.07);
	padding: 2px 10px;
	border-radius: 100px;
	letter-spacing: 0.5px;
	font-family: var(--font-en);
}
.news-card-h-date {
	font-size: 12px;
	color: var(--c-text-light);
	font-family: var(--font-en);
	font-weight: 400;
}
.news-card-h-title {
	font-size: 18px;
	font-weight: 600;
	color: var(--slate-900);
	line-height: 1.4;
	margin-bottom: 8px;
	text-decoration: none;
	display: block;
	transition: color var(--duration-fast);
}
.news-card-h-title:hover {
	color: var(--accent-from);
}
.news-card-h-excerpt {
	font-size: 14px;
	color: var(--c-text-secondary);
	line-height: 1.7;
	font-weight: 400;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* 无图卡片 — 左侧色带替代缩略图 */
.news-card-h.no-thumb .news-card-h-body {
	padding-left: 28px;
	position: relative;
}
.news-card-h.no-thumb .news-card-h-body::before {
	content: "";
	position: absolute;
	left: 0;
	top: 20%;
	height: 60%;
	width: 3px;
	background: var(--gradient-accent);
	border-radius: 2px;
	opacity: 0.5;
}
.news-card-h.no-thumb:hover .news-card-h-body::before {
	opacity: 0.9;
}

.news-sidebar-card {
	background: var(--white);
	border-radius: var(--r-lg);
	padding: 26px;
	border: 1px solid var(--c-border-light);
	margin-bottom: 24px;
}
.news-sidebar-card h4 {
	font-size: 14px;
	font-weight: 600;
	color: var(--slate-900);
	margin-bottom: 18px;
	padding-bottom: 12px;
	border-bottom: 1px solid var(--accent-from);
}
.news-sidebar-card ul {
	list-style: none;
}
.news-sidebar-card ul li a {
	display: block;
	padding: 9px 12px;
	font-size: 13px;
	color: var(--c-text-secondary);
	font-weight: 400;
	text-decoration: none;
	border-radius: var(--r-sm);
	transition: all var(--duration-fast);
}
.news-sidebar-card ul li a:hover,
.news-sidebar-card ul li a.active {
	background: rgba(29, 58, 110, 0.03);
	color: var(--space-700);
	font-weight: 600;
}

/* ============================================================
   联系我们页
   ============================================================ */
.contact-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 52px;
}
.contact-info-cards {
	display: flex;
	flex-direction: column;
	gap: 24px;
}
.contact-info-card {
	background: var(--white);
	border-radius: var(--r-lg);
	padding: 30px;
	border: 1px solid var(--c-border-light);
	box-shadow: var(--shadow-md);
	transition: box-shadow var(--duration);
}
.contact-info-card:hover {
	box-shadow: var(--shadow-lg);
}
.contact-info-card h4 {
	font-size: 16px;
	font-weight: 600;
	color: var(--slate-900);
	margin-bottom: 18px;
	padding-bottom: 12px;
	border-bottom: 1px solid var(--accent-from);
}
.contact-info-card .info-row {
	display: flex;
	gap: 12px;
	align-items: flex-start;
	margin-bottom: 14px;
	font-size: 14px;
	color: var(--c-text-secondary);
	font-weight: 400;
}
.contact-info-card .info-row svg {
	flex-shrink: 0;
	color: var(--space-700);
	margin-top: 2px;
}
.contact-form-card {
	background: var(--white);
	border-radius: var(--r-lg);
	padding: 44px;
	border: 1px solid var(--c-border-light);
	box-shadow: var(--shadow-md);
}
.contact-form-card h3 {
	font-size: 21px;
	font-weight: 600;
	color: var(--slate-900);
	margin-bottom: 28px;
}
.contact-form .form-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 18px;
}

/* ============================================================
   动画
   ============================================================ */
.anim-up {
	opacity: 0;
	transform: translateY(28px);
	transition: all 0.7s var(--ease-out);
}
.anim-up.visible {
	opacity: 1;
	transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
	}
	.anim-up {
		opacity: 1;
		transform: none;
		transition: none;
	}
}

/* ============================================================
   背景工具类
   ============================================================ */
.bg-white {
	background: var(--white);
}
.bg-light {
	background: var(--c-bg);
}

/* ============================================================
   新闻详情页 — 文章头部 + UEeditor 内容样式
   兼容 jeecms + 百度 UEeditor 产出的 HTML
   所有选择器限定在 .news-detail-* 内，不影响站内其他区域
   ============================================================ */

/* 文章标题区 */
.news-detail-header {
	margin-bottom: 36px;
	padding-bottom: 28px;
	border-bottom: 1px solid var(--c-border-light);
}
.news-detail-title {
	font-size: 30px;
	font-weight: 700;
	color: var(--slate-900);
	line-height: 1.35;
	margin-bottom: 14px;
	letter-spacing: 0.1px;
}
.news-detail-meta {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-wrap: wrap;
	font-size: 13px;
	color: var(--c-text-light);
	font-weight: 400;
}
.news-detail-meta-sep {
	color: var(--slate-300);
}
.news-detail-tag {
	display: inline-block;
	font-size: 10px;
	font-weight: 600;
	color: var(--accent-from);
	background: rgba(99, 179, 237, 0.07);
	padding: 2px 10px;
	border-radius: 100px;
	letter-spacing: 0.5px;
	font-family: var(--font-en);
	text-transform: uppercase;
}

/* 正文 */
.news-detail-body {
	font-size: 15px;
	color: var(--c-text);
	line-height: 1.9;
	font-weight: 400;
}
.news-detail-body p {
	margin-bottom: 20px;
}
.news-detail-body strong,
.news-detail-body b {
	font-weight: 600;
	color: var(--slate-900);
}

/* 标题 h2-h4 — UEeditor 通常产出 h2 作为正文二级标题 */
.news-detail-body h2 {
	font-size: 22px;
	font-weight: 600;
	color: var(--slate-900);
	margin: 40px 0 16px;
	padding-left: 14px;
	border-left: 3px solid var(--accent-from);
	line-height: 1.4;
	letter-spacing: 0.2px;
}
.news-detail-body h3 {
	font-size: 18px;
	font-weight: 600;
	color: var(--slate-900);
	margin: 32px 0 12px;
	line-height: 1.4;
}
.news-detail-body h4 {
	font-size: 16px;
	font-weight: 600;
	color: var(--slate-800);
	margin: 24px 0 10px;
	line-height: 1.4;
}

/* 链接 */
.news-detail-body a {
	color: var(--accent-from);
	text-decoration: none;
	transition: color var(--duration-fast);
}
.news-detail-body a:hover {
	color: var(--blue-500);
	text-decoration: underline;
}

/* 图片 */
.news-detail-body img {
	max-width: 100%;
	height: auto;
	border-radius: var(--r-md);
	display: block;
}

/* 列表 */
.news-detail-body ul,
.news-detail-body ol {
	margin: 16px 0 20px;
	padding-left: 24px;
}
.news-detail-body ul {
	list-style: disc;
}
.news-detail-body ol {
	list-style: decimal;
}
.news-detail-body li {
	margin-bottom: 8px;
	font-size: 15px;
	color: var(--c-text);
	line-height: 1.8;
}
.news-detail-body li::marker {
	color: var(--accent-from);
}

/* 引用块 */
.news-detail-body blockquote {
	margin: 32px 0;
	padding: 24px 28px;
	background: linear-gradient(135deg, var(--slate-50) 0%, var(--white) 100%);
	border-left: 4px solid var(--gold);
	border-radius: 0 var(--r-md) var(--r-md) 0;
	position: relative;
}
.news-detail-body blockquote::before {
	content: "\201C";
	position: absolute;
	top: -8px;
	left: 12px;
	font-size: 48px;
	color: var(--gold);
	opacity: 0.2;
	font-family: Georgia, serif;
	line-height: 1;
	pointer-events: none;
}
.news-detail-body blockquote p {
	font-size: 15px;
	color: var(--c-text);
	font-style: italic;
	margin-bottom: 8px;
}
.news-detail-body blockquote cite {
	display: block;
	font-size: 13px;
	color: var(--c-text-light);
	font-style: normal;
	margin-top: 8px;
	text-align: right;
}

/* 水平线 */
.news-detail-body hr {
	border: none;
	height: 1px;
	margin: 40px 0;
	background: linear-gradient(
		90deg,
		transparent,
		var(--c-border-light),
		transparent
	);
}

/* 表格 */
.news-detail-body table {
	width: 100%;
	border-collapse: collapse;
	margin: 24px 0;
	font-size: 14px;
	border: 1px solid var(--c-border-light);
	border-radius: var(--r-md);
	overflow: hidden;
}
.news-detail-body thead {
	background: var(--gradient-card-dark);
}
.news-detail-body thead th {
	padding: 14px 18px;
	text-align: left;
	font-weight: 600;
	font-size: 13px;
	color: var(--white);
	letter-spacing: 0.3px;
	font-family: var(--font-en);
}
.news-detail-body tbody td {
	padding: 13px 18px;
	border-bottom: 1px solid var(--c-border-light);
	color: var(--c-text);
	font-weight: 400;
}
.news-detail-body tbody tr:nth-child(even) {
	background: var(--slate-50);
}
.news-detail-body tbody tr:hover {
	background: rgba(99, 179, 237, 0.04);
}
.news-detail-body tbody tr:last-child td {
	border-bottom: none;
}

/* 代码 */
.news-detail-body code {
	background: var(--slate-100);
	color: var(--slate-800);
	padding: 2px 8px;
	border-radius: 4px;
	font-size: 13px;
	font-family: "Consolas", "Menlo", "Monaco", monospace;
}
.news-detail-body pre {
	background: var(--space-900);
	color: var(--slate-200);
	padding: 20px 24px;
	border-radius: var(--r-md);
	overflow-x: auto;
	font-size: 13px;
	line-height: 1.7;
	margin: 24px 0;
	font-family: "Consolas", "Menlo", "Monaco", monospace;
}
.news-detail-body pre code {
	background: transparent;
	color: inherit;
	padding: 0;
	font-size: inherit;
	border-radius: 0;
}

/* 配图说明 — UEeditor 图片后常跟居中灰色小字 */
.news-detail-body .figcaption,
.news-detail-body figcaption {
	text-align: center;
	font-size: 13px;
	color: var(--c-text-light);
	margin-top: -12px;
	margin-bottom: 24px;
}

/* 分享按钮 hover */
.news-share-btn:hover {
	background: var(--space-700) !important;
	color: var(--white) !important;
	border-color: var(--space-700) !important;
}

/* ============================================================
   翻页 — Pagination
   ============================================================ */
.pagination {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	margin-top: 40px;
	padding-top: 24px;
	border-top: 1px solid var(--c-border-light);
}
.pagination-prev,
.pagination-next {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border-radius: var(--r-md);
	font-size: 14px;
	color: var(--c-text-secondary);
	background: var(--white);
	border: 1px solid var(--c-border-light);
	text-decoration: none;
	transition: all var(--duration-fast);
	cursor: pointer;
}
.pagination-prev:hover,
.pagination-next:hover {
	border-color: var(--accent-from);
	color: var(--accent-from);
	background: rgba(99, 179, 237, 0.04);
}
.pagination-num {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 36px;
	height: 36px;
	border-radius: var(--r-md);
	font-size: 14px;
	font-weight: 500;
	color: var(--c-text-secondary);
	background: var(--white);
	border: 1px solid var(--c-border-light);
	text-decoration: none;
	transition: all var(--duration-fast);
	padding: 0 10px;
}
.pagination-num:hover {
	border-color: var(--accent-from);
	color: var(--accent-from);
	background: rgba(99, 179, 237, 0.04);
}
.pagination-num.active {
	background: var(--gradient-accent);
	color: var(--white);
	border-color: transparent;
	box-shadow: var(--shadow-btn);
	font-weight: 600;
}
.pagination-ellipsis {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 36px;
	height: 36px;
	font-size: 14px;
	color: var(--c-text-light);
}

/* ============================================================
   降级方案
   ============================================================ */
@supports not (backdrop-filter: blur(1px)) {
	.header {
		background: var(--white);
	}
	.header.scrolled {
		background: rgba(255, 255, 255, 0.98);
	}
	.header-transparent {
		background: rgba(6, 13, 26, 0.92);
	}
	.header-transparent.scrolled {
		background: rgba(255, 255, 255, 0.98);
	}
}

/* ================================================================
   Toast 通知
   ============================================================ */
.iipc-toast {
	position: fixed;
	top: 24px;
	left: 50%;
	transform: translate(-50%, -120%);
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 14px 24px;
	border-radius: 12px;
	background: rgba(15, 25, 50, 0.92);
	backdrop-filter: blur(20px);
	-webkit-backdrop-filter: blur(20px);
	border: 1px solid rgba(255, 255, 255, 0.08);
	box-shadow:
		0 12px 40px rgba(0, 0, 0, 0.35),
		0 0 0 1px rgba(255, 255, 255, 0.05) inset;
	z-index: 9999;
	transition:
		transform 0.45s cubic-bezier(0.16, 1, 0.3, 1),
		opacity 0.35s ease;
	opacity: 0;
	pointer-events: none;
}
.iipc-toast--show {
	transform: translate(-50%, 0);
	opacity: 1;
	pointer-events: auto;
}
.iipc-toast-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 32px;
	height: 32px;
	border-radius: 50%;
}
.iipc-toast--success .iipc-toast-icon {
	background: rgba(82, 196, 26, 0.15);
	color: #73d13d;
}
.iipc-toast--error .iipc-toast-icon {
	background: rgba(255, 77, 79, 0.15);
	color: #ff7875;
}
.iipc-toast-text {
	font-size: 14px;
	font-weight: 500;
	color: rgba(255, 255, 255, 0.9);
	letter-spacing: 0.02em;
	line-height: 1.4;
}

/* ============================================================
   价格表
   ============================================================ */
.price-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 14px;
}
.price-table thead th {
	background: var(--slate-100);
	color: var(--slate-900);
	padding: 14px 16px;
	font-weight: 600;
	text-align: center;
	border-bottom: 2px solid var(--gold);
}
.price-table .price-subhead th {
	background: var(--slate-50);
	font-weight: 400;
	font-size: 13px;
	color: var(--slate-500);
	border-bottom: 1px solid var(--slate-200);
}
.price-table tbody td {
	padding: 14px 16px;
	text-align: center;
	border: 1px solid var(--c-border-light);
	color: var(--c-text-secondary);
}
.price-table tbody tr:nth-child(even) {
	background: var(--c-bg);
}
.price-table .price-note td {
	font-size: 13px;
	color: var(--c-text-light);
	text-align: left;
}

/* ============================================================
   联系人卡片
   ============================================================ */
.contact-cards {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: 20px;
}
.contact-card {
	background: var(--c-bg);
	border-radius: var(--r-lg);
	padding: 24px;
	text-align: center;
	border: 1px solid var(--c-border-light);
}
.contact-card h4 {
	font-size: 16px;
	font-weight: 600;
	color: var(--slate-900);
	margin-bottom: 12px;
}
.contact-card p {
	font-size: 14px;
	color: var(--c-text-secondary);
	margin-bottom: 4px;
	line-height: 1.6;
}
@media (max-width: 640px) {
	.contact-cards {
		grid-template-columns: 1fr;
	}
}

/* ============================================================
   联系我们页联系人子项
   ============================================================ */
.contact-person-list {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 12px;
	margin-top: 16px;
	padding-top: 14px;
	border-top: 1px solid var(--c-border-light);
}
.contact-person {
	text-align: center;
	padding: 0 8px;
}
.contact-person h5 {
	font-size: 14px;
	font-weight: 600;
	color: var(--slate-900);
	margin-bottom: 6px;
}
.contact-person p {
	font-size: 12px;
	color: var(--c-text-secondary);
	margin-bottom: 2px;
	line-height: 1.5;
}

/* ============================================================
   算术验证码
   ============================================================ */
.captcha-row {
	display: flex;
	align-items: center;
	gap: 12px;
}
.captcha-question {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 90px;
	height: 46px;
	padding: 0 16px;
	background: linear-gradient(135deg, #f1f5f9, #e2e8f0);
	border-radius: 8px;
	font-size: 17px;
	font-weight: 700;
	letter-spacing: 0.5px;
	color: var(--slate-800);
	white-space: nowrap;
	user-select: none;
}
.captcha-input {
	flex: 1;
	max-width: 140px;
}
