 * {
 	margin: 0;
 	padding: 0;
 	box-sizing: border-box;
 }

 body {
 	font-family: 'Segoe UI', Roboto, 'Helvetica Neue', sans-serif;
 	background-color: #f5f7fb;
 	color: #1e2a3a;
 	line-height: 1.5;
 }

 .container {
 	max-width: 1280px;
 	margin: 0 auto;
 	padding: 0 24px;
 }

 /* 头部样式 */
 .header {
 	background: linear-gradient(135deg, #0b3b2f 0%, #1a5f4b 100%);
 	padding: 24px 0;
 	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
 }

 .header-content {
 	display: flex;
 	align-items: center;
 	flex-wrap: wrap;
 	gap: 20px;
 }

 .logo {
 	width: 70px;
 	height: 70px;
 	background-color: #f5e7d9;
 	border-radius: 50%;
 	display: flex;
 	align-items: center;
 	justify-content: center;
 	font-size: 36px;
 	font-weight: bold;
 	color: #0b3b2f;
 	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
 }

 .site-title h1 {
 	font-size: 1.7rem;
 	font-weight: 600;
 	color: white;
 	letter-spacing: 1px;
 }

 .site-title p {
 	font-size: 0.85rem;
 	color: #d1e8e0;
 	margin-top: 6px;
 }

 @media (max-width: 640px) {
 	.site-title h1 {
 		font-size: 1.2rem;
 	}

 	.logo {
 		width: 55px;
 		height: 55px;
 		font-size: 28px;
 	}

 	.header-content {
 		justify-content: center;
 		text-align: center;
 	}
 }

 /* 导航栏 */
 .nav-bar {
 	background-color: #ffffff;
 	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
 	position: sticky;
 	top: 0;
 	z-index: 100;
 }

 .nav-menu {
 	display: flex;
 	flex-wrap: wrap;
 	justify-content: center;
 	list-style: none;
 	gap: 8px;
 }

 .nav-menu li a {
 	display: inline-block;
 	padding: 16px 20px;
 	text-decoration: none;
 	font-weight: 600;
 	color: #2c3e2f;
 	transition: 0.3s;
 	border-bottom: 3px solid transparent;
 }

 .nav-menu li a:hover,
 .nav-menu li a.active {
 	color: #1a5f4b;
 	border-bottom-color: #1a5f4b;
 	background-color: #f0f9f5;
 }

 @media (max-width: 768px) {
 	.nav-menu li a {
 		padding: 12px 14px;
 		font-size: 0.9rem;
 	}
 }

 /* banner 幻灯片区域 */
 .banner {
 	margin: 32px 0 24px;
 	border-radius: 28px;
 	overflow: hidden;
 	box-shadow: 0 12px 24px -8px rgba(0, 0, 0, 0.15);
 	position: relative;
 }

 .swiper {
 	position: relative;
 	width: 100%;
 	height: auto;
 }

 .slides-container {
 	display: flex;
 	transition: transform 0.5s ease;
 }

 .slide {
 	flex: 0 0 100%;
 	position: relative;
 }

 .slide img {
 	width: 100%;
 	height: auto;
 	display: block;
 	object-fit: cover;
 	max-height: 450px;
 }

 .slide-caption {
 	position: absolute;
 	bottom: 20px;
 	left: 20px;
 	background: rgba(0, 0, 0, 0.6);
 	color: white;
 	padding: 10px 20px;
 	border-radius: 40px;
 	font-weight: 500;
 	backdrop-filter: blur(4px);
 }

 .banner-nav {
 	position: absolute;
 	bottom: 15px;
 	right: 20px;
 	display: flex;
 	gap: 10px;
 	z-index: 10;
 }

 .banner-nav button {
 	background: rgba(0, 0, 0, 0.5);
 	border: none;
 	color: white;
 	font-size: 20px;
 	padding: 6px 14px;
 	border-radius: 30px;
 	cursor: pointer;
 	transition: 0.2s;
 }

 .banner-nav button:hover {
 	background: #1a5f4b;
 }

 .dots {
 	position: absolute;
 	bottom: 15px;
 	left: 20px;
 	display: flex;
 	gap: 10px;
 	z-index: 10;
 }

 .dot {
 	width: 10px;
 	height: 10px;
 	background: rgba(255, 255, 255, 0.6);
 	border-radius: 50%;
 	cursor: pointer;
 	transition: 0.2s;
 }

 .dot.active {
 	background: #1a5f4b;
 	width: 22px;
 	border-radius: 10px;
 }

 @media (max-width: 600px) {
 	.slide-caption {
 		font-size: 0.8rem;
 		bottom: 10px;
 		left: 10px;
 	}
 }

 /* 四个专题栏目链接卡片 */
 .feature-grid {
 	display: grid;
 	grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
 	gap: 28px;
 	margin: 50px 0 40px;
 }

 .feature-card {
 	background: white;
 	border-radius: 28px;
 	padding: 28px 16px 24px;
 	text-align: center;
 	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.05);
 	transition: all 0.3s ease;
 	cursor: pointer;
 	text-decoration: none;
 	color: #1e2a3a;
 	display: block;
 	border: 1px solid #e9edf2;
 }

 .feature-card:hover {
 	transform: translateY(-8px);
 	box-shadow: 0 20px 30px -12px rgba(27, 85, 68, 0.2);
 	border-color: #cde3db;
 }

 .feature-icon {
 	font-size: 48px;
 	margin-bottom: 16px;
 }

 .feature-card h3 {
 	font-size: 1.35rem;
 	color: #0b3b2f;
 	margin-bottom: 12px;
 }

 .feature-card p {
 	color: #5a6e6a;
 	font-size: 0.9rem;
 }

 /* 三个新闻板块布局 */
 .news-section {
 	display: grid;
 	grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
 	gap: 30px;
 	margin: 40px 0 50px;
 }

 .news-panel {
 	background: white;
 	border-radius: 24px;
 	padding: 20px 24px 28px;
 	box-shadow: 0 6px 14px rgba(0, 0, 0, 0.03);
 	border: 1px solid #eef2f6;
 	transition: 0.2s;
 }

 .news-panel h2 {
 	font-size: 1.6rem;
 	border-left: 6px solid #1a5f4b;
 	padding-left: 16px;
 	margin-bottom: 20px;
 	color: #1f3d36;
 }

 .news-list {
 	list-style: none;
 }

 .news-list li {
 	padding: 14px 0;
 	border-bottom: 1px dashed #e2e8f0;
 	display: flex;
 	justify-content: space-between;
 	align-items: baseline;
 	flex-wrap: wrap;
 	gap: 8px;
 }

 .news-list li a {
 	text-decoration: none;
 	color: #2c4b3e;
 	font-weight: 500;
 	transition: 0.2s;
 	flex: 1;
 	font-size: 0.95rem;
 }

 .news-list li a:hover {
 	color: #1a5f4b;
 	padding-left: 4px;
 	text-decoration: underline;
 }

 .news-date {
 	font-size: 0.75rem;
 	color: #8a9ca8;
 	background: #f1f5f9;
 	padding: 2px 10px;
 	border-radius: 20px;
 	white-space: nowrap;
 }

 .more-link {
 	display: inline-block;
 	margin-top: 18px;
 	color: #1a5f4b;
 	text-decoration: none;
 	font-weight: 600;
 }

 .more-link:hover {
 	text-decoration: underline;
 }

 /* 友情链接 */
 .friend-links {
 	background: #eef3f0;
 	border-radius: 32px;
 	padding: 32px 28px;
 	margin: 40px 0 30px;
 }

 .friend-links h3 {
 	font-size: 1.5rem;
 	margin-bottom: 20px;
 	color: #1f3d36;
 }

 .links-group {
 	display: flex;
 	flex-wrap: wrap;
 	gap: 20px;
 	row-gap: 16px;
 }

 .links-group a {
 	text-decoration: none;
 	background: white;
 	padding: 8px 20px;
 	border-radius: 40px;
 	color: #1a5f4b;
 	font-weight: 500;
 	transition: 0.2s;
 	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
 }

 .links-group a:hover {
 	background: #1a5f4b;
 	color: white;
 	transform: translateY(-2px);
 }

 /* 底部信息 */
 .footer {
 	background: #0c2f26;
 	color: #cbdcd6;
 	padding: 40px 0 24px;
 	margin-top: 40px;
 	font-size: 0.85rem;
 }

 .footer-content {
 	display: flex;
 	flex-direction: column;
 	align-items: center;
 	text-align: center;
 	gap: 12px;
 }

 .footer-copyright {
 	letter-spacing: 1px;
 }

 @media (max-width: 700px) {
 	.container {
 		padding: 0 18px;
 	}

 	.feature-card h3 {
 		font-size: 1.2rem;
 	}

 	.news-panel h2 {
 		font-size: 1.3rem;
 	}
 }

 .active-nav {
 	border-bottom-color: #1a5f4b !important;
 	color: #1a5f4b !important;
 }