:root {
	--page-bg: #fffdf9;
	--gold-main: #c19a5b;
	--gold-highlight: #f9f0d1;
	--gold-soft: #e8d5b5;
	--gold-deep: #8c6a31;
	--dark: #2a1d0a;
	--text-engrave: #2d1e05;
	--text-main: #4a3614;
	--text-sub: #8c7a60;
	--brand-red: #d7261e;
	--hover-plate: rgba(255, 255, 255, 0.45);
	--hover-border: rgba(255, 255, 255, 0.6);
	--glass: rgba(255, 255, 255, 0.75);
	--card-shadow: 0 20px 40px rgba(181, 147, 93, 0.12);
	--overlay: rgba(0, 0, 0, 0.95);
}

body, html {
	margin: 0;
	padding: 0;
	font-family: "PingFang SC", "Microsoft YaHei", sans-serif;
	background: var(--page-bg);
}

header, footer, main {
	padding: 0 10%;
	box-sizing: border-box;
}

main {
	padding-top: 60px;
	padding-bottom: 60px;
}

@media (max-width: 1400px) {
	header, footer, main {
		padding: 0 20px;
	}

	main {
		padding-top: 50px;
		padding-bottom: 50px;
	}
}

@media (max-width: 1024px) {
	body, html {
		width: 100vw;
		overflow-x: hidden;
	}

	header, footer, main {
		padding: 0 20px;
	}

	main {
		padding-top: 30px;
		padding-bottom: 30px;
	}
}

/* ------------ 导航 ------------ */
.header {
	height: 75px;
	background: var(--gold-highlight);
	backdrop-filter: blur(15px);
	border-bottom: 1px solid rgba(255, 255, 255, 0.2);
	display: flex;
	align-items: center;
	justify-content: space-between;
	z-index: 1000;
	position: sticky;
	top: 0;
	transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	box-sizing: border-box;
	background: linear-gradient(90deg, #BF953F, #FCF6BA, #B38728, #FBF5B7, #AA771C);
	color: #2A1D0A;
	box-shadow: 0 4px 20px rgba(184, 134, 11, 0.4);
}

.header-logo {
	text-decoration: none;
}

.header-logo img {
	display: block;
	height: 70px;
}

#menu-switch, .menu-icon {
	display: none;
}

.nav-menu {
	display: flex;
	gap: 8px;
}

.nav-link {
	text-decoration: none;
	color: var(--text-main);
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 1.5px;
	padding: 8px 16px;
	border-radius: 50px;
	border: 1px solid transparent;
	transition: all 0.35s cubic-bezier(0.25, 1, 0.5, 1);
}

.nav-link:hover {
	background: var(--hover-plate);
	border-color: var(--hover-border);
	color: var(--dark);
	transform: translateY(-2px);
	box-shadow: 0 6px 20px rgba(74, 54, 20, 0.12);
}

.nav-link.active {
	background: var(--hover-plate);
	border-color: var(--gold-main);
	color: var(--dark);
	font-weight: 700;
	box-shadow: inset 0 0 8px rgba(193, 154, 91, 0.1);
	/*pointer-events: none;*/
}

@media (max-width: 1024px) {
	.menu-icon {
		display: flex;
		flex-direction: column;
		gap: 6px;
		cursor: pointer;
	}

	.menu-icon span {
		width: 24px;
		height: 2px;
		background: var(--text-main);
		transition: 0.3s;
	}

	.nav-menu {
		position: fixed;
		top: 75px;
		right: -100%;
		width: 100%;
		height: calc(100vh - 75px);
		background: rgba(42, 29, 10, 0.97);
		backdrop-filter: blur(25px);
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 25px;
		transition: 0.5s cubic-bezier(0.4, 0, 0.2, 1);
	}

	.nav-link {
		color: var(--gold-highlight);
		font-size: 19px;
		border: 1px solid rgba(255, 255, 255, 0.1);
	}

	.nav-link:hover {
		background: rgba(255, 255, 255, 0.15);
		color: #fff;
	}

	.nav-link.active {
		background: rgba(255, 255, 255, 0.2);
		color: #fff;
		border-color: var(--gold-highlight);
	}

	#menu-switch:checked ~ .nav-menu {
		right: 0;
	}

	#menu-switch:checked ~ .menu-icon span:nth-child(1) {
		transform: translateY(8px) rotate(45deg);
	}

	#menu-switch:checked ~ .menu-icon span:nth-child(2) {
		opacity: 0;
	}

	#menu-switch:checked ~ .menu-icon span:nth-child(3) {
		transform: translateY(-8px) rotate(-45deg);
	}
}

/* ------------ 关于我们 ------------ */
.main-about {
	max-width: 1300px;
	margin: 0 auto;
	padding: 60px 20px;
	display: flex;
	flex-direction: column;
	gap: 80px;
}

.main-about .about-section {
	position: relative;
	display: grid;
	align-items: flex-start;
	grid-template-columns: 200px 1fr;
	gap: 40px;
}

.main-about .section-header {
	position: sticky;
	top: 80px;
}

.main-about .section-num {
	font-family: "Georgia", serif;
	font-size: 80px;
	font-weight: 900;
	color: rgba(193, 154, 91, 0.1);
	line-height: 0.8;
	margin-bottom: 10px;
}

.main-about .section-title-box h2 {
	font-size: 32px;
	color: var(--gold-main);
	margin: 0;
	letter-spacing: 4px;
	position: relative;
	display: inline-block;
}

.main-about .section-title-box h2::after {
	content: '';
	position: absolute;
	bottom: -10px;
	left: 0;
	width: 40px;
	height: 3px;
	background: var(--brand-red);
}

.main-about .section-title-box p {
	font-size: 13px;
	color: var(--text-sub);
	text-transform: uppercase;
	letter-spacing: 2px;
	margin-top: 15px;
	font-weight: 600;
}

.main-about .content-body {
	background: white;
	padding: 50px;
	border-radius: 4px 40px 4px 40px;
	border-left: 4px solid var(--gold-main);
	box-shadow: 20px 20px 60px rgba(193, 154, 91, 0.05);
	transition: all 0.4s ease;
}

.main-about .content-body:hover {
	transform: translateY(-10px);
	box-shadow: 30px 30px 80px rgba(193, 154, 91, 0.12);
}

.main-about .lang-cn {
	font-size: 17px;
	margin-bottom: 25px;
	text-align: justify;
	font-weight: 500;
	color: var(--text-main);
}

.main-about .lang-en {
	font-size: 14px;
	color: var(--text-sub);
	font-style: italic;
	border-top: 1px solid rgba(193, 154, 91, 0.15);
	padding-top: 20px;
}

.main-about .badge-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
	gap: 15px;
	margin-top: 30px;
}

.main-about .badge-item {
	background: #fdfaf5;
	padding: 15px 20px;
	border-radius: 8px;
	border: 1px solid var(--gold-soft);
	font-size: 14px;
	color: var(--text-main);
	font-weight: 600;
	display: flex;
	align-items: center;
	gap: 10px;
	transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
	cursor: pointer;
	position: relative;
	top: 0;
}

.main-about .badge-item::before {
	content: '◈';
	color: var(--gold-main);
}

.main-about .badge-item:hover {
	background: #ffffff;
	border-color: var(--gold-main);
	color: var(--gold-main);
	top: -5px;
	box-shadow: 0 10px 20px rgba(193, 154, 91, 0.12);
}

.main-about .badge-item:hover::before {
	transform: scale(1.2);
	transition: transform 0.3s ease;
}

@media (max-width: 992px) {
	.main-about {
		padding-top: 30px;
		padding-bottom: 30px;
		gap: 30px;
	}

	.main-about .about-section {
		grid-template-columns: 1fr;
		gap: 30px;
	}

	.main-about .section-header {
		position: static;
	}

	.main-about .section-num {
		font-size: 60px;
	}

	.main-about .content-body {
		padding: 30px 20px;
		border-radius: 4px 25px 4px 25px;
	}

	.main-about .lang-cn {
		font-size: 16px;
	}
}

/* ------------ 经典案例 ------------ */
.main-cases {
	max-width: 1300px;
	margin: 0 auto;
	padding: 50px 20px;
}

.main-cases .page-header {
	padding: 0 20px 40px;
	text-align: center;
}

.main-cases .page-header h1 {
	font-size: 36px;
	font-weight: 300;
	letter-spacing: 12px;
	color: var(--dark);
	margin: 0;
}

.main-cases .page-header span {
	display: block;
	font-size: 12px;
	color: var(--gold-soft);
	letter-spacing: 4px;
	margin-top: 10px;
	text-transform: uppercase;
}

.main-cases .case-item {
	display: flex;
	align-items: center;
	margin-bottom: 150px;
	gap: 60px;
	padding: 0 20px;
}

.main-cases .case-item:nth-child(even) {
	flex-direction: row-reverse;
}

.main-cases .case-image {
	flex: 1.3;
	overflow: hidden;
	box-shadow: 0 30px 60px rgba(0, 0, 0, 0.1);
	aspect-ratio: 16 / 10;
	background: #eee;
	border-radius: 12px;
	transform: scale(1);
	transition: transform 0.4s ease, box-shadow 0.4s ease;
}

.main-cases .case-image:hover {
	transform: scale(1.03);
	box-shadow: 0 40px 80px rgba(0, 0, 0, 0.15);
}

.main-cases .case-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.main-cases .case-content {
	flex: 1;
}

.main-cases .case-content h2 {
	font-size: 32px;
	color: var(--dark);
	margin: 0 0 20px 0;
	position: relative;
	padding-bottom: 15px;
}

.main-cases .case-content h2::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 50px;
	height: 2px;
	background: var(--brand-red);
}

.main-cases .case-desc {
	font-size: 17px;
	line-height: 1.8;
	margin-bottom: 30px;
	text-align: justify;
}

.main-cases .tag-group {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.main-cases .tag {
	font-size: 13px;
	color: var(--gold-soft);
	border: 1px solid #E8D5B5;
	padding: 5px 12px;
	border-radius: 2px;
	background: #fff;
	transition: background 0.3s, color 0.3s;
}

.main-cases .tag:hover {
	background: var(--gold-soft);
	color: #fff;
}

@media (max-width: 1024px) {
	.main-cases .page-header {
		padding: 0 20px 30px;
	}

	.main-cases .page-header h1 {
		font-size: 28px;
		letter-spacing: 6px;
	}

	.main-cases .case-item, .main-cases .case-item:nth-child(even) {
		flex-direction: column !important;
		margin-bottom: 80px;
		gap: 0;
		padding: 0;
	}

	.main-cases .case-image {
		width: 100%;
		box-shadow: none;
		transform: scale(1);
	}

	.main-cases .case-image:hover {
		transform: scale(1);
		box-shadow: none;
	}

	.main-cases .case-content {
		padding: 40px 25px;
	}

	.main-cases .case-content h2 {
		font-size: 24px;
		margin-bottom: 15px;
	}

	.main-cases .case-desc {
		font-size: 16px;
		line-height: 1.6;
		margin-bottom: 25px;
		color: #444;
	}

	.main-cases .tag-group {
		gap: 8px;
	}

	.main-cases .tag {
		font-size: 12px;
		padding: 4px 10px;
	}
}

/* ------------ 品质运营 ------------ */
.main-operation {
	max-width: 1300px;
	margin: 0 auto;
	padding: 50px 20px;
}

.main-operation .hero-card {
	background: linear-gradient(135deg, #e6d3b3 0%, #fdf8f0 50%, #e6d3b3 100%);
	padding: 80px 40px;
	border-radius: 40px;
	position: relative;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	align-items: center;
	box-shadow: 0 40px 100px rgba(181, 147, 93, 0.2);
	margin-bottom: 60px;
	border: 1px solid rgba(255, 255, 255, 0.6);
}

.main-operation .hero-card::after {
	content: '';
	position: absolute;
	top: -50%;
	left: -50%;
	width: 200%;
	height: 200%;
	background: radial-gradient(circle, rgba(255, 255, 255, 0.4) 0%, transparent 70%);
	animation: rotate 15s linear infinite;
}

@keyframes rotate {
	from {
		transform: rotate(0deg);
	}
	to {
		transform: rotate(360deg);
	}
}

.main-operation .hero-content {
	position: relative;
	z-index: 2;
	max-width: 850px;
}

.main-operation .hero-content h1 {
	font-size: 56px;
	font-weight: 200;
	letter-spacing: 20px;
	color: #2a1d0a;
	margin: 0 0 40px;
	background: linear-gradient(to bottom, #2a1d0a, #856d45);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

.main-operation .hero-glass-box {
	background: var(--glass);
	backdrop-filter: blur(15px);
	padding: 40px 50px;
	border-radius: 30px;
	border: 1px solid rgba(255, 255, 255, 0.5);
	box-shadow: 0 15px 35px rgba(0, 0, 0, 0.05);
}

.main-operation .hero-glass-box p {
	font-size: 19px;
	line-height: 2.1;
	margin: 0;
	text-align: justify;
}

.main-operation .hero-glass-box .en {
	display: block;
	font-size: 13px;
	color: var(--gold-deep);
	margin-top: 25px;
	letter-spacing: 3px;
	font-weight: 600;
	text-transform: uppercase;
	border-top: 1px solid rgba(181, 147, 93, 0.2);
	padding-top: 20px;
}

.main-operation .grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 40px;
}

.main-operation .card {
	background: #fff;
	padding: 50px;
	border-radius: 35px;
	border: 1px solid rgba(181, 147, 93, 0.1);
	transition: all 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
	position: relative;
	display: flex;
	flex-direction: column;
}

.main-operation .card:hover {
	transform: translateY(-15px) scale(1.02);
	box-shadow: 0 50px 80px rgba(181, 147, 93, 0.15);
	background: #fffdf9;
	border-color: rgba(181, 147, 93, 0.4);
}

.main-operation .card-num {
	font-size: 80px;
	font-weight: 900;
	color: rgba(181, 147, 93, 0.04);
	position: absolute;
	top: 20px;
	right: 40px;
	font-family: "Arial", sans-serif;
}

.main-operation .card h2 {
	font-size: 26px;
	color: #2a1d0a;
	margin: 0 0 25px;
	display: flex;
	align-items: center;
}

.main-operation .card h2::before {
	content: '';
	width: 8px;
	height: 8px;
	background: var(--gold-deep);
	border-radius: 50%;
	margin-right: 15px;
	box-shadow: 0 0 10px var(--gold-deep);
}

.main-operation .zh {
	font-size: 16.5px;
	line-height: 1.9;
	color: #5c4e3a;
	margin-bottom: 25px;
}

.main-operation .en-sub {
	font-size: 13px;
	color: #9a8a70;
	line-height: 1.6;
	margin-top: auto;
	letter-spacing: 0.5px;
	font-style: italic;
}

@media (max-width: 850px) {
	.main-operation .hero-card {
		padding: 40px 20px;
		border-radius: 30px;
	}

	.main-operation .hero-content h1 {
		font-size: 32px;
		letter-spacing: 8px;
	}

	.main-operation .hero-glass-box {
		padding: 25px;
		border-radius: 20px;
	}

	.main-operation .hero-glass-box p {
		font-size: 16px;
	}

	.main-operation .grid {
		grid-template-columns: 1fr;
		gap: 25px;
	}

	.main-operation .card {
		padding: 35px 25px;
		border-radius: 25px;
	}
}

/* ------------ 匠心守护 ------------ */
.main-gallery {
	max-width: 1300px;
	margin: 0 auto;
	padding: 50px 20px 100px;
}

.main-gallery .intro {
	text-align: center;
	margin-bottom: 80px;
}

.main-gallery .intro h1 {
	font-size: 46px;
	font-weight: 200;
	letter-spacing: 15px;
	color: var(--dark);
	margin: 0;
}

.main-gallery .intro .line {
	width: 40px;
	height: 2px;
	background: var(--gold-main);
	margin: 30px auto;
}

.main-gallery .showcase-section {
	display: flex;
	flex-direction: column;
	gap: 120px;
}

.main-gallery .section-item {
	display: flex;
	align-items: center;
	gap: 80px;
	position: relative;
}

.main-gallery .section-item:nth-child(even) {
	flex-direction: row-reverse;
}

.main-gallery .image-window {
	flex: 1.4;
	position: relative;
	aspect-ratio: 16 / 10;
	border-radius: 30px;
	overflow: hidden;
	box-shadow: 0 30px 60px rgba(42, 29, 10, 0.08);
	cursor: pointer;
	display: block;
}

.main-gallery .image-window img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 1.5s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.main-gallery .image-window::after {
	content: 'VIEW GALLERY';
	position: absolute;
	inset: 0;
	background: rgba(42, 29, 10, 0.3);
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	letter-spacing: 5px;
	font-size: 12px;
	opacity: 0;
	transition: opacity 0.4s;
}

.main-gallery .image-window:hover::after {
	opacity: 1;
}

.main-gallery .image-window:hover img {
	transform: scale(1.1);
}

.main-gallery .text-card {
	flex: 1;
	display: flex;
	flex-direction: column;
}

.main-gallery .text-card h2 {
	font-size: 38px;
	color: var(--dark);
	margin: 0 0 25px 0;
	font-weight: 300;
}

.main-gallery .text-card .description {
	font-size: 17px;
	line-height: 2;
	color: #5c4e3a;
	margin-bottom: 25px;
	text-align: justify;
}

.main-gallery .feature-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 35px;
}

.main-gallery .tag {
	background: #fff;
	padding: 6px 16px;
	border-radius: 50px;
	font-size: 12.5px;
	color: var(--gold-main);
	border: 1px solid rgba(193, 154, 91, 0.15);
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.02);
	transition: all 0.3s;
}

.main-gallery .section-item:hover .tag {
	border-color: var(--gold-main);
	background: #fffdf9;
}

.main-gallery .more-btn {
	display: inline-flex;
	align-items: center;
	align-self: flex-start;
	text-decoration: none;
	color: var(--dark);
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 2px;
	padding: 10px 0;
	position: relative;
	transition: all 0.3s;
}

.main-gallery .more-btn::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 35px;
	height: 1px;
	background: var(--gold-main);
	transition: width 0.4s ease;
}

.main-gallery .more-btn:hover {
	color: var(--gold-main);
	letter-spacing: 3px;
}

.main-gallery .more-btn:hover::after {
	width: 100%;
}

.main-gallery .more-btn svg {
	margin-left: 12px;
	transition: transform 0.3s;
}

.main-gallery .more-btn:hover svg {
	transform: translateX(8px);
}

@media (max-width: 900px) {
	.main-gallery .section-item, .main-gallery .section-item:nth-child(even) {
		flex-direction: column;
		gap: 40px;
	}

	.main-gallery .image-window {
		border-radius: 20px;
	}

	.main-gallery .text-card h2 {
		font-size: 30px;
	}

	.main-gallery .feature-tags {
		margin-bottom: 25px;
	}

	.main-gallery .more-btn {
		padding: 12px 30px;
		border: 1px solid var(--gold-main);
		border-radius: 50px;
		align-self: stretch;
		justify-content: center;
	}

	.main-gallery .more-btn::after {
		display: none;
	}
}

/* ------------ 影像系统 ------------ */
.gallery-box {
	width: 100%;
	max-width: 1000px;
	box-sizing: border-box;
	margin: 0 auto;
	padding: 60px 20px;
}

.gallery-box .title {
	text-align: center;
	margin-bottom: 50px;
}

.gallery-box .title h1 {
	font-size: 32px;
	letter-spacing: 8px;
	color: #2A1D0A;
	margin: 0;
}

.gallery-box .title p {
	color: var(--gold-main);
	font-size: 14px;
	margin-top: 10px;
	letter-spacing: 2px;
}

.gallery-box .photo-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 20px;
}

.gallery-box .photo-card {
	background: #fff;
	border-radius: 15px;
	overflow: hidden;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
	cursor: pointer;
	transition: 0.3s;
}

.gallery-box .photo-card:hover {
	transform: translateY(-5px);
}

.gallery-box .photo-card .img-box {
	aspect-ratio: 16 / 9;
	overflow: hidden;
	background: #eee;
}

.gallery-box .photo-card img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.gallery-box .photo-card .info {
	padding: 15px;
	text-align: center;
	font-size: 15px;
	color: #444;
}

#viewerBox {
	width: 100vw;
	height: 100%;
	box-sizing: border-box;
	position: fixed;
	inset: 0;
	background: var(--overlay);
	z-index: 9999;
	display: none;
	flex-direction: column;
	backdrop-filter: blur(20px);
	-webkit-backdrop-filter: blur(20px);
	user-select: none;
	touch-action: none;
}

/* 顶部工具栏 */
#viewerBox .toolbar {
	height: 70px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0 25px;
	color: #fff;
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), transparent);
	z-index: 100;
}

#viewerBox .toolbar-btns {
	display: flex;
	gap: 15px;
}

#viewerBox .btn {
	width: 42px;
	height: 42px;
	border-radius: 50%;
	border: none;
	background: rgba(255, 255, 255, 0.1);
	color: #fff;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 20px;
	transition: 0.2s;
}

#viewerBox .btn:hover {
	background: var(--gold-main);
}

#viewerBox .btn.close:hover {
	background: #e74c3c;
}

/* 主视窗区 */
#viewerBox .viewer-stage {
	flex: 1;
	position: relative;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
}

#viewerBox #viewerImg {
	max-width: 95%;
	max-height: 85vh;
	box-shadow: 0 0 50px rgba(0, 0, 0, 0.5);
	transform: translate3d(0, 0, 0) scale(1);
	will-change: transform;
	cursor: grab;
}

#viewerBox #viewerImg:active {
	cursor: grabbing;
}

/* 导航按钮 */
#viewerBox .nav-arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	background: none;
	border: none;
	color: rgba(255, 255, 255, 0.3);
	font-size: 60px;
	cursor: pointer;
	padding: 20px;
	z-index: 101;
	transition: 0.3s;
}

#viewerBox .nav-arrow:hover {
	color: #fff;
}

#viewerBox .prev-arrow {
	left: 10px;
}

#viewerBox .next-arrow {
	right: 10px;
}

/* 底部进度 */
#viewerBox .viewer-footer {
	height: 60px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	color: #fff;
	background: linear-gradient(to top, rgba(0, 0, 0, 0.5), transparent);
}

#viewerBox #imgTitle {
	font-size: 14px;
	margin-bottom: 5px;
	opacity: 0.9;
}

#viewerBox #imgIndex {
	font-size: 12px;
	opacity: 0.6;
	letter-spacing: 2px;
}

/* 手机端适配 */
@media (max-width: 850px) {
	#viewerBox {
		width: 100vw;
	}

	.gallery-box .photo-grid {
		grid-template-columns: 1fr;
	}

	#viewerBox .nav-arrow {
		display: none;
	}

	#viewerBox .toolbar {
		padding: 0 15px;
	}

	#viewerBox .photo-grid {
		gap: 10px;
	}
}

/* ------------ 合规资质 ------------ */
.main-honor {
	max-width: 1300px;
	margin: 0 auto;
	padding: 30px 20px;
}

.main-honor .art-header {
	position: relative;
	background: #fff;
	padding: 40px 30px;
	margin-bottom: 30px;
	display: flex;
	align-items: center;
	overflow: hidden;
	border: 1px solid rgba(193, 154, 91, 0.15);
	box-shadow: 0 40px 100px rgba(0, 0, 0, 0.03);
}

.main-honor .art-side-text {
	writing-mode: vertical-rl;
	font-family: "Georgia", serif;
	font-size: 11px;
	letter-spacing: 5px;
	color: var(--gold-main);
	opacity: 0.5;
	padding-right: 40px;
	border-right: 1px solid var(--gold-main);
	margin-right: 60px;
	text-transform: uppercase;
}

.main-honor .art-content {
	flex: 1;
	text-align: left;
}

.main-honor .art-content h1 {
	font-size: 42px;
	font-weight: 300;
	color: var(--dark);
	margin: 0 0 30px 0;
	letter-spacing: 15px;
	display: flex;
	align-items: center;
}

.main-honor .art-content h1::after {
	content: '合规';
	font-size: 12px;
	font-weight: 900;
	color: #fff;
	background: #B02520;
	padding: 4px;
	margin-left: 20px;
	border-radius: 2px;
}

.main-honor .art-content p {
	font-size: 18px;
	line-height: 2.2;
	color: #6a5a40;
	margin: 0;
	font-weight: 400;
	text-align: justify;
}

.main-honor .art-gold {
	color: var(--gold-main);
	font-weight: 600;
	border-bottom: 2px solid rgba(193, 154, 91, 0.12);
}

.main-honor .cert-gallery {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 30px;
}

.main-honor .cert-item {
	position: relative;
	background: #fff;
	padding: 15px;
	aspect-ratio: 16 / 10;
	transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
	cursor: pointer;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05), 0 1px 1px rgba(193, 154, 91, 0.1);
	border: 1px solid rgba(193, 154, 91, 0.05);
}

.main-honor .cert-item img {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: cover;
	transition: transform 0.6s ease;
}

.main-honor .cert-item:hover {
	transform: translateY(-15px);
	box-shadow: 0 40px 80px rgba(193, 154, 91, 0.18);
	border-color: var(--gold-main);
}

.main-honor .modal {
	display: none;
	position: fixed;
	inset: 0;
	background: rgba(10, 8, 5, 0.97);
	backdrop-filter: blur(20px);
	z-index: 10000;
	justify-content: center;
	align-items: center;
}

.main-honor .modal-content {
	max-width: 90%;
	max-height: 88vh;
	box-shadow: 0 0 100px rgba(0, 0, 0, 0.5);
	border: 2px solid var(--gold-main);
}

.main-honor .close-btn {
	position: absolute;
	top: 30px;
	right: 40px;
	width: 44px;
	height: 44px;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 10001;
	transition: transform 0.3s;
}

.main-honor .close-btn::before, .main-honor .close-btn::after {
	content: '';
	position: absolute;
	width: 30px;
	height: 2px;
	background: #fff;
}

.main-honor .close-btn::before {
	transform: rotate(45deg);
}

.main-honor .close-btn::after {
	transform: rotate(-45deg);
}

.main-honor .close-btn:hover {
	transform: rotate(90deg);
}

.main-honor .close-btn:hover::before, .close-btn:hover::after {
	background: var(--gold-main);
}

@media (max-width: 900px) {
	.main-honor .art-header {
		flex-direction: column;
		padding: 40px 25px;
	}

	.main-honor .art-content h1 {
		font-size: 36px;
		letter-spacing: 0;
	}

	.main-honor .art-side-text {
		writing-mode: horizontal-tb;
		border-right: none;
		border-bottom: 1px solid var(--gold-main);
		margin: 0 0 20px 0;
		padding: 0 0 10px 0;
		width: 100%;
	}

	.main-honor .cert-gallery {
		grid-template-columns: 1fr;
		gap: 20px;
	}

	.main-honor .close-btn {
		top: 20px;
		right: 20px;
	}
}

/* ------------ 合作洽谈 ------------ */
.main-contact {
	max-width: 1260px;
	margin: 0 auto;
	border-radius: 40px;
	background: linear-gradient(135deg, rgba(255, 255, 255, 0.4) 0%, rgba(255, 255, 255, 0) 50%, rgba(255, 255, 255, 0.4) 100%),
	repeating-linear-gradient(90deg, rgba(0, 0, 0, 0.02) 0px, rgba(0, 0, 0, 0.02) 1px, transparent 1px, transparent 2px),
	linear-gradient(135deg, #bf953f 0%, #fcf6ba 20%, #b38728 40%, #fbf5b7 60%, #aa771c 80%, #fcf6ba 100%);
	box-shadow: 0 30px 60px rgba(0, 0, 0, 0.8), 0 0 20px rgba(191, 149, 63, 0.3);
	display: flex;
	position: relative;
	transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
	cursor: default;
	overflow: hidden;
}

.main-contact:hover {
	transform: translateY(-15px);
	box-shadow: 0 50px 100px rgba(0, 0, 0, 0.9), 0 0 40px rgba(253, 246, 186, 0.2);
}

.main-contact::after {
	content: "";
	position: absolute;
	top: -50%;
	left: -100%;
	width: 40%;
	height: 200%;
	background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.7) 50%, rgba(255, 255, 255, 0) 100%);
	transform: rotate(30deg);
	transition: 0.8s;
	pointer-events: none;
}

.main-contact:hover::after {
	left: 150%;
}

.main-contact .plate-left {
	flex: 1.2;
	padding: 80px 60px;
	border-right: 1px solid rgba(0, 0, 0, 0.08);
}

.main-contact .plate-right {
	flex: 1;
	padding: 80px 60px;
	background: rgba(0, 0, 0, 0.02);
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 35px;
}

.main-contact .slogan-group {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.main-contact .slogan-row {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 15px;
}

.main-contact .char-red {
	font-size: 64px;
	font-weight: 900;
	color: var(--brand-red);
	line-height: 1;
	filter: drop-shadow(2px 2px 2px rgba(0, 0, 0, 0.3));
}

.main-contact .char-engrave {
	font-size: 36px;
	font-weight: 800;
	color: var(--text-engrave);
	letter-spacing: 8px;
	text-shadow: 0.5px 1px 0 rgba(255, 255, 255, 0.4);
}

.main-contact .vision-text {
	margin-top: 45px;
	font-size: 16px;
	color: var(--text-engrave);
	letter-spacing: 3px;
	font-weight: 700;
	border-top: 1px solid rgba(0, 0, 0, 0.08);
	padding-top: 30px;
	text-align: center;
}

.main-contact .info-box h6 {
	margin: 0;
	font-size: 12px;
	color: rgba(0, 0, 0, 0.4);
	letter-spacing: 1.5px;
}

.main-contact .info-box p {
	margin: 8px 0 0;
	font-size: 16px;
	color: var(--text-engrave);
	font-weight: 700;
	line-height: 1.4;
}

.main-contact .company-name {
	font-size: 20px;
	color: var(--text-engrave);
	letter-spacing: 2px;
	font-weight: 800;
	text-shadow: 1px 1px 1px rgba(255, 255, 255, 0.4), -0.5px -0.5px 0 rgba(0, 0, 0, 0.1);
}

.main-contact .hotline-link {
	display: inline-block;
	text-decoration: none;
	font-size: 28px !important;
	color: var(--brand-red);
	font-weight: 900;
	transition: all 0.3s ease;
	position: relative;
}

.main-contact .hotline-link:hover {
	color: #ff0000;
	transform: scale(1.05);
	text-shadow: 0 0 15px rgba(215, 38, 30, 0.4);
}

@media (max-width: 850px) {
	.main-contact {
		flex-direction: column;
		border-radius: 30px;
	}

	.main-contact .plate-left {
		border-right: none;
		border-bottom: 1px solid rgba(0, 0, 0, 0.08);
		padding: 30px 20px;
	}

	.main-contact .plate-right {
		padding: 30px 20px;
	}

	.main-contact .vision-text, .main-contact .company-name {
		letter-spacing: 0;
	}

	.main-contact .char-red {
		font-size: 48px;
	}

	.main-contact .char-engrave {
		font-size: 28px;
		letter-spacing: 4px;
	}

	.main-contact .hotline-link {
		font-size: 26px;
	}
}

/* ------------ 底部 ------------ */
.footer {
	background-color: #1a140a;
	background-image: linear-gradient(to bottom, rgba(193, 154, 91, 0.2) 0%, transparent 10%),
	radial-gradient(ellipse at 50% -20%, rgba(193, 154, 91, 0.15) 0%, transparent 80%),
	linear-gradient(135deg, #2d2412 0%, #1a140a 100%);
	padding-top: 80px;
	padding-bottom: 40px;
	border-top: 1px solid rgba(193, 154, 91, 0.4);
	backdrop-filter: blur(30px);
	position: relative;
	overflow: hidden;
}

.footer::after {
	content: "";
	position: absolute;
	top: 0;
	left: -150%;
	width: 100%;
	height: 100%;
	background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.03) 50%, rgba(255, 255, 255, 0) 100%);
	transform: skewX(-20deg);
	animation: silkFlow 15s infinite ease-in-out;
}

@keyframes silkFlow {
	0% {
		left: -150%;
		opacity: 0;
	}
	50% {
		opacity: 1;
	}
	100% {
		left: 150%;
		opacity: 0;
	}
}

.footer-grid {
	max-width: 1200px;
	margin: 0 auto;
	display: flex;
	justify-content: space-around;
	gap: 30px;
}

.footer-promo-item {
	padding: 25px;
	border-radius: 20px;
	border: 1px solid transparent;
	transition: all 0.4s ease;
}

.footer-promo-item:hover {
	background: rgba(255, 255, 255, 0.08);
	border-color: rgba(255, 255, 255, 0.1);
	transform: scale(1.05);
}

.footer-promo-item h4 {
	color: var(--gold-highlight);
	font-size: 16px;
	letter-spacing: 4px;
	margin-bottom: 12px;
}

.footer-promo-item p {
	color: rgba(255, 255, 255, 0.55);
	font-size: 14px;
	margin: 0;
	line-height: 1.6;
}

.footer .copyright {
	margin-top: 60px;
	font-size: 11px;
	color: rgba(255, 255, 255, 0.25);
	letter-spacing: 1.5px;
	border-top: 1px solid rgba(255, 255, 255, 0.05);
	padding-top: 30px;
	text-align: center;
}

@media (max-width: 1024px) {
	.footer-grid {
		flex-direction: column;
		gap: 15px;
	}
}