﻿/* ===== 移动端响应式样式 ===== */
/* 所有移动端样式均包裹在媒体查询内，确保不影响PC端 */

@media screen and (max-width: 1700px) {
	/* 1700px 以下无需额外调整，.w 类自动处理 */
}

@media screen and (max-width: 768px) {
	/* 头部 */
	.header {
		height: auto;
		padding: 0;
	}

	/* 顶部绿色条 */
	.header-top-bar {
		padding: 10px 0;
	}

	.header-top-bar-inner {
		justify-content: flex-end;
	}

	.header-top-right {
		gap: 12px;
	}

	.header-top-links a,
	.header-top-links span {
		font-size: 13px;
	}

	.header-top-links span {
		margin: 0 4px;
	}

	.header-top-search .search-icon img {
		width: 18px;
		height: 18px;
	}

	.header-wrap {
		width: 100%;
		box-sizing: border-box;
		display: flex;
		align-items: center;
		justify-content: space-between;
		height: auto;
		padding: 12px 20px;
	}

	.logo {
		display: block;
	}

	.logo img {
		height: 50px;
		width: auto;
	}

	/* 汉堡菜单按钮 */
	.mobile-menu-btn {
		display: block;
		position: relative;
		width: 30px;
		height: 24px;
		cursor: pointer;
		z-index: 1001;
		padding: 4px 0;
	}

	.mobile-menu-btn span {
		display: block;
		width: 100%;
		height: 3px;
		background-color: #333;
		margin-bottom: 6px;
		border-radius: 2px;
		transition: all 0.3s ease;
	}

	.mobile-menu-btn span:last-child {
		margin-bottom: 0;
	}

	.mobile-menu-btn.active span:nth-child(1) {
		transform: rotate(45deg);
		margin-top: 9px;
	}

	.mobile-menu-btn.active span:nth-child(2) {
		opacity: 0;
	}

	.mobile-menu-btn.active span:nth-child(3) {
		transform: rotate(-45deg);
		margin-top: -18px;
	}

	/* 导航遮罩 */
	.nav-overlay {
		display: none;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: rgba(0,0,0,0.5);
		z-index: 99;
	}

	.nav-overlay.active {
		display: block;
	}

	/* 导航 */
	.nav {
		display: none;
		position: fixed;
		top: 0;
		right: -80%;
		width: 80%;
		height: 100%;
		background-color: #fff;
		z-index: 9999;
		padding: 60px 20px 20px;
		transition: right 0.3s ease;
		overflow-y: auto;
		box-sizing: border-box;
		box-shadow: -2px 0 10px rgba(0,0,0,0.1);
	}

	.nav.open {
		display: block;
		right: 0;
	}

	.nav-list li {
		float: none;
		margin-left: 0;
		text-align: left;
		border-bottom: 1px solid #eee;
	}

	.nav-list li a {
		font-size: 16px;
		padding: 15px 0;
		color: #333;
	}

	.nav-list li a::after {
		display: none;
	}

	.nav-list li a:hover {
		color: #2d8a4e;
	}

	/* 二级菜单 */
	.nav-list .has-submenu:hover .submenu {
		display: none;
        animation: none;
	}

	.submenu {
		display: none;
		position: static;
		transform: none;
		background-color: #f9f9f9;
		padding: 0;
		margin: 0;
		border-radius: 0;
		min-width: auto;
		width: 100%;
		box-shadow: none;
	}

	.submenu::before {
		display: none;
	}

	.submenu li {
		margin: 0;
		border-bottom: 1px solid #eee;
	}

	.submenu li:last-child {
		border-bottom: none;
	}

	.submenu li a {
		font-size: 14px;
		padding: 12px 15px;
		color: #666;
		display: block;
	}

	.submenu li a:hover {
		background-color: #f0f0f0;
		color: #2d8a4e;
	}

	/* 搜索弹窗 */
	.search-input {
		font-size: 16px;
	}

	.search-btn {
		font-size: 14px;
		padding: 8px 20px;
	}

	/* Banner */
	.banner {
		height: auto;
	}

	.banner-swiper {
		height: 280px;
	}

	.banner-swiper .swiper-slide {
		height: 100%;
	}

	.banner-controls {
		bottom: 12px;
		gap: 6px;
	}

	.banner-swiper .swiper-pagination {
		position: static;
		width: auto;
		gap: 4px;
	}

	.banner-swiper .swiper-pagination-bullet {
		width: 28px;
		height: 28px;
		font-size: 11px;
		margin: 0 2px !important;
	}

	.banner-next-btn {
		width: 28px;
		height: 28px;
		margin-left: 2px;
	}
	
	.header{
		height: auto;
	}

	/* 内容区 */
	.content-section {
		padding: 40px 0;
	}

	.content-section-inner {
		display: block;
		flex-direction: column;
		padding: 0 15px;
		gap: 20px;
	}

	.content-left {
		flex: none;
		width: 100%;
		grid-template-columns: 50% 50%;
		grid-template-rows: 1fr 1fr;
		gap: 0;
	}

	.content-left > * {
		box-sizing: border-box;
		width: 100%;
		overflow: hidden;
	}

	.content-title-block {
		width: 100%;
		height: 180px;
		padding: 20px;
	}

	.title-en {
		font-size: 13px;
	}

	.title-cn {
		font-size: 28px;
		line-height: 1.3;
	}

	.content-more-btn {
		font-size: 13px;
		padding: 5px 14px;
		margin-top: 16px;
	}

	.content-more-btn img {
		height: 11px;
	}

	.content-tab-item {
		width: 100%;
		height: 180px;
		padding: 14px 10px;
	}

	.content-tab-item img {
		width: 52px;
		height: 52px;
		margin-bottom: 10px;
	}

	.tab-label {
		font-size: 18px;
	}

	.tab-sublabel {
		display: block;
		font-size: 11px;
	}

	.content-panel {
		height: 280px;
		padding-bottom: 0;
	}

	.content-next-btn img {
		width: 16px;
		height: 16px;
	}

	/* 新闻资讯区 */
	.news-section {
		padding: 40px 0;
	}

	.news-title-cn {
		font-size: 26px;
	}

	.news-title-en {
		font-size: 13px;
	}

	.news-more-btn {
		position: static;
		transform: none;
		margin-top: 16px;
		font-size: 13px;
		padding: 5px 14px;
	}

	.news-cards {
		flex-direction: column;
		gap: 16px;
	}

	.news-card-title {
		font-size: 15px;
		min-height: auto;
	}

	.news-list {
		grid-template-columns: 1fr;
		gap: 12px;
	}

	.news-list-item {
		padding: 16px;
	}

	.news-list-title {
		font-size: 14px;
	}

	.news-list-arrow {
		right: 16px;
	}

	/* 招生动态区 */
	.enrollment-section {
		padding: 30px 0;
		padding-bottom: 0;
	}

	.enrollment-bg-left {
		display: block;
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		height: 300px;
		background: url(../images/left-bg.png) no-repeat left center;
		background-size: cover;
		z-index: 0;
		pointer-events: none;
	}

	.enrollment-bg-right {
		display: none;
	}

	.enrollment-inner {
		flex-direction: column;
		padding: 0 15px;
		gap: 20px;
		position: relative;
		z-index: 1;
	}

	.enrollment-left {
		flex: none;
		width: 100%;
		padding: 0;
	}

	.enrollment-title-block {
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
		margin-bottom: 0;
	}

	.enrollment-title-en {
		font-size: 12px;
	}

	.enrollment-title-cn {
		font-size: 24px;
	}

	.enrollment-center {
		flex: none;
		width: 100%;
		padding: 15px;
		align-self: auto;
	}

	.enrollment-nav-arrows {
		position: static;
		flex-direction: row-reverse;
		justify-content: center;
		gap: 10px;
		margin-top: 15px;
	}

	.enrollment-pagination {
		position: static;
		margin-top: 10px;
	}

	.enrollment-card {
		flex-direction: column;
		margin-bottom: 20px;
	}

	.enrollment-card:last-child {
		margin-bottom: 0;
	}

	.enrollment-card-date {
		flex: none;
		width: 100%;
		flex-direction: row;
		gap: 10px;
		padding: 8px 12px;
	}

	.date-day {
		font-size: 24px;
	}

	.date-month {
		font-size: 11px;
	}

	.enrollment-card-content {
		padding: 12px;
	}

	.enrollment-card-title {
		font-size: 14px;
		color: #2a4abf;
	}

	.enrollment-card-desc {
		font-size: 12px;
		color: #2a4abf;
	}

	.enrollment-aside {
		flex: none;
		width: 100vw;
		margin-left: calc(-50vw + 50%);
		padding: 20px 25px;
		background: url(../images/right-bg.png) no-repeat right center;
		background-size: cover;
	}

	.enrollment-aside-title {
		font-size: 18px;
		color: #2a4abf;
	}

	.enrollment-aside-content p {
		font-size: 13px;
		color: #2a4abf;
	}

	.enrollment-arrow-next,
	.enrollment-arrow-prev {
		border-radius: 5px;
	}

	/* Banner-N 子页 */
	.page-banner {
		margin-top: 100px;
		height: 200px;
	}

	.page-banner-inner {
		padding-bottom: 30px;
	}

	.page-banner-title {
		font-size: 22px;
	}

	.page-banner-breadcrumb a,
	.page-banner-breadcrumb .breadcrumb-sep {
		font-size: 14px;
	}

	/* 面包屑条 */
	.breadcrumb-bar {
		height: 36px;
	}

	.breadcrumb-bar::before {
		clip-path: none;
	}

	.breadcrumb-label,
	.breadcrumb-inner a,
	.breadcrumb-sep,
	.breadcrumb-current {
		font-size: 12px;
	}

	/* 文章列表 */
	.article-section {
		padding: 30px 0 50px;
	}

	.article-item {
		flex-wrap: wrap;
	}

	.article-body {
		flex-wrap: wrap;
	}

	.article-date-block {
		flex: 0 0 60px;
		padding: 10px 6px;
	}

	.article-date-day {
		font-size: 32px;
	}

	.article-date-month {
		font-size: 11px;
	}

	.article-content {
		flex: 1;
		padding: 14px 40px 14px 14px;
		min-width: 0;
	}

	.article-title {
		font-size: 16px;
	}

	.article-desc {
		font-size: 13px;
		-webkit-line-clamp: 2;
	}

	.article-arrow {
		bottom: 10px;
		right: 14px;
	}

	.article-arrow img {
		width: 16px;
	}

	.article-thumb {
		flex: 0 0 100%;
		width: 100%;
		height: 160px;
		margin: 0;
	}

	.article-pagination {
		gap: 4px;
		margin-top: 30px;
		flex-wrap: wrap;
	}

	.page-btn {
		min-width: 30px;
		height: 30px;
		padding: 0 8px;
		font-size: 12px;
	}

	.page-ellipsis {
		min-width: 30px;
		height: 30px;
		font-size: 12px;
	}

	.page-jump-label {
		font-size: 12px;
	}

	.page-jump-input {
		width: 40px;
		height: 30px;
		font-size: 12px;
	}

	.page-jump-btn {
		height: 30px;
		padding: 0 10px;
		font-size: 12px;
	}

	/* 人员列表响应式 */
	.breadcrumb-tabs {
		position: static;
		transform: none;
		justify-content: flex-end;
		padding: 0 15px;
		margin-top: 8px;
	}

	.breadcrumb-tab {
		font-size: 13px;
	}

	.personnel-section {
		padding: 20px 0 40px;
	}

	.personnel-sub-tabs {
		justify-content: center;
		margin-bottom: 20px;
	}

	.sub-tab {
		padding: 8px 20px;
		font-size: 13px;
	}

	.personnel-grid {
		grid-template-columns: 1fr;
		gap: 20px;
	}

	.personnel-card {
		flex-direction: column;
		min-height: auto;
	}

	.photo-corner-tr,
	.photo-corner-bl {
		width: 80px;
		height: 80px;
	}

	.personnel-photo {
		flex: none;
		width: 200px;
		height: 267px;
		margin: 16px auto 0;
	}

	.personnel-info {
		padding: 16px;
	}

	.personnel-name {
		font-size: 18px;
	}

	.personnel-titles p {
		font-size: 13px;
	}

	.personnel-detail-btn {
		position: static;
		align-self: flex-end;
		margin: 0 16px 16px;
	}

	/* 文章详情页响应式 */
	.article-detail-section {
		padding: 30px 0 50px;
	}

	.article-detail-title {
		font-size: 22px;
	}

	.article-detail-meta span {
		font-size: 13px;
		margin-right: 12px;
	}

	.article-detail-divider {
		margin-bottom: 24px;
	}

	.article-detail-content {
		font-size: 15px;
		line-height: 1.8;
	}

	/* 单文档页响应式 */
	.doc-page-title {
		font-size: 18px;
	}

	.doc-page-content {
		font-size: 15px;
		line-height: 1.8;
	}

	/* 悬浮面板移动端缩小 */
	.float-panel {
		width: auto;
	}

	.float-panel-item {
		width: 60px;
		padding: 12px 6px 10px;
	}

	.float-panel-icon {
		width: 24px;
		height: 24px;
		margin-bottom: 4px;
	}

	.float-panel-label {
		font-size: 11px;
	}

	.float-panel-qrcode {
		right: 70px;
		padding: 6px;
	}

	.float-panel-qrcode img {
		width: 100px;
		height: 100px;
	}

	.float-panel-qrcode-tip {
		font-size: 10px;
	}

	.float-panel-consult:hover .float-panel-qrcode,
	.float-panel-consult .float-panel-qrcode.show {
		width: 112px;
	}

	/* Banner 区移动端 */
	.banner-section {
		margin-top: 118px;
		height: auto;
	}

	.banner-inner {
		flex-direction: column;
		height: auto;
	}

	.banner-left {
		flex: none;
		width: 100%;
		height: 0;
		padding-bottom: 56.47%; /* 480/850 */
		position: relative;
		overflow: hidden;
	}

	.banner-slider-track {
		position: absolute;
		top: 0;
		left: 0;
		width: 300%;
		height: 100%;
	}

	.banner-slide {
		width: 33.3333%;
		height: 100%;
	}

	.banner-slide img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	.banner-right {
		padding: 20px 0 0;
		min-height: 250px;
		overflow: hidden;
		position: relative;
	}

	.banner-text-track {
		display: flex;
		width: 300%;
		transition: transform 0.5s ease;
	}

	.banner-text-slide {
		width: 33.3333%;
		flex-shrink: 0;
		padding: 0 15px;
		box-sizing: border-box;
	}

	.banner-title {
		font-size: 18px;
		margin-bottom: 15px;
		word-wrap: break-word;
		overflow-wrap: break-word;
		line-height: 1.4;
	}

	.banner-date {
		font-size: 18px;
	}

	.banner-nav {
		position: absolute;
		bottom: 0;
		right: 0;
		z-index: 10;
	}

	.banner-prev,
	.banner-next {
		width: 50px;
		height: 50px;
	}

	.banner-prev img,
	.banner-next img {
		width: auto;
		height: auto;
	}

	/* Events 区移动端 */
	.events-section {
		padding: 40px 0;
	}

	.events-inner {
		flex-direction: column;
		gap: 20px;
	}

	.events-left {
		flex: none;
		width: 100%;
	}

	.events-title {
		font-size: 24px;
	}

	.events-list li a {
		padding: 15px 0 15px 12px;
	}

	.events-item-title {
		font-size: 14px;
	}

	.events-item-date {
		font-size: 12px;
	}

	/* News & Overseas Exchange 区移动端 */
	.news-overseas-section {
		padding: 40px 0;
	}

	.news-overseas-inner {
		flex-direction: column;
		gap: 20px;
	}

	.news-overseas-card {
		padding: 20px;
	}

	.card-title {
		font-size: 23px;
	}

	.card-item-title {
		font-size: 16px;
	}
.card-list{
	padding: 0 5px;
}

	/* Footer 移动端 */
	.footer {
		padding: 30px 0;
	}

	.footer-address,
	.footer-info,
	.footer-copyright {
		font-size: 12px;
	}

	/* 文章列表页移动端 */
	.article-list-section {
		padding: 20px 0 40px;
	}

	.article-list-item {
		flex-direction: column;
		gap: 16px;
		padding: 20px 0;
	}

	.article-list-title {
		font-size: 16px;
		margin: 0 0 14px;
		padding-left: 12px;
	}

	.article-list-desc {
		font-size: 14px;
		margin: 0 0 16px;
		padding-left: 12px;
		-webkit-line-clamp: 2;
	}

	.article-list-date {
		padding-left: 12px;
	}

	.article-list-thumb {
		flex: none;
		width: 100%;
		height: auto;
		aspect-ratio: 240 / 160;
	}

	/* 图片列表页移动端 */
	.photo-list-section {
		padding: 20px 0 40px;
	}

	.photo-list-inner {
		grid-template-columns: repeat(2, 1fr);
		gap: 16px;
	}

	.photo-list-name {
		font-size: 14px;
	}

	/* 文章详情页移动端 */
	.article-detail-page-section {
		padding: 30px 0 50px;
	}

	.article-detail-page-title {
		font-size: 18px;
	}

	.article-detail-page-meta span {
		font-size: 14px;
	}

	.article-detail-page-content {
		font-size: 15px;
		line-height: 1.8;
	}

}