/* 分页容器 */
.pagination {
	display: flex;
	justify-content: center; /* 水平居中 */
	align-items: center; /* 垂直居中 */
	list-style: none; /* 去掉列表样式 */
	padding: 10px; /* 去掉默认内边距 */
	margin: 20px 0; /* 上下外边距 */
	/*margin-right: 20%;*/
}
/* 基础样式 */

                             /* 校园风光 */
.container {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 20px;
}

.section-title {
	font-size: 28px;
	color: #003366;
	text-align: center;
	margin: 40px 0;
	padding-bottom: 10px;
	border-bottom: 3px solid #003366;
	display: inline-block;
}

/* 图片展示区域 */
.gallery {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
	gap: 20px;
	margin-bottom: 40px;
}

.gallery-item {
	position: relative;
	overflow: hidden;
	border-radius: 8px;
	aspect-ratio: 4 / 3;
	transition: transform 0.3s ease;
}

.gallery-item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.3s ease;
}

.gallery-item:hover {
	transform: translateY(-5px);
}

.gallery-item:hover img {
	transform: scale(1.1);
}

.gallery-caption {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	background: rgba(0, 56, 148, 0.7);
	color: white;
	padding: 15px;
	transform: translateY(100%);
	transition: transform 0.3s ease;
}

.gallery-item:hover .gallery-caption {
	transform: translateY(0);
}

.caption-title {
	font-size: 18px;
	margin-bottom: 5px;
}

.caption-description {
	font-size: 14px;
	opacity: 0.8;
}

/* 响应式设计 */
@media (max-width: 768px) {
	.section-title {
		font-size: 24px;
	}

	.gallery {
		grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
	}
}

@media (max-width: 480px) {
	.gallery {
		grid-template-columns: 1fr;
	}
}

/* 放大图片的样式 */
.modal {
	display: none;
	position: fixed;
	z-index: 999;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	overflow: auto;
	background-color: rgba(0, 0, 0, 0.9);
}

.modal-content {
	margin: auto;
	display: block;
	width: 80%;
	max-width: 700px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.close {
	position: absolute;
	top: 15px;
	right: 35px;
	color: #f1f1f1;
	font-size: 40px;
	font-weight: bold;
	transition: 0.3s;
	cursor: pointer;
}

.close:hover,
.close:focus {
	color: #bbb;
	text-decoration: none;
	cursor: pointer;
}
.footer_panel{
	position: static;
}
.twitter{
	position: static;
}
.text-center{
	position: static;
}

                       /* 关于我们 */
.new-timeline-container {
	max-width: 1200px;
	margin: 50px auto;
	padding: 0 20px;
}

.new-timeline-header {
	text-align: center;
	margin-bottom: 50px;
}

.new-timeline-header h1 {
	font-size: 2rem;
	color: #003894;
	margin-bottom: 15px;
	position: relative;
	display: inline-block;
}

.new-timeline-header h1::after {
	content: '';
	position: absolute;
	width: 70%;
	height: 3px;
	background: #003894;
	bottom: -10px;
	left: 15%;
}

.new-timeline {
	position: relative;
	padding: 40px 0;
}

/* 时间轴中心线 */
.new-timeline::before {
	content: '';
	position: absolute;
	width: 4px;
	background-color: #003894;
	top: 0;
	bottom: 0;
	left: 50%;
	margin-left: -2px;
	border-radius: 2px;
}

.new-timeline-item {
	padding: 20px 40px;
	position: relative;
	width: 50%;
	opacity: 0;
	transform: translateY(50px);
	transition: all 0.5s ease;
}

.new-timeline-item.visible {
	opacity: 1;
	transform: translateY(0);
}

.new-timeline-item:nth-child(odd) {
	left: 0;
}

.new-timeline-item:nth-child(even) {
	left: 50%;
}

.new-timeline-content {
	padding: 30px;
	background: #fff;
	border-radius: 8px;
	box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
	position: relative;
	border: 1px solid #eee;
}

.new-timeline-item:nth-child(odd) .new-timeline-content::after {
	content: '';
	position: absolute;
	border-style: solid;
	border-width: 10px 0 10px 10px;
	border-color: transparent transparent transparent #fff;
	right: -10px;
	top: 30px;
}

.new-timeline-item:nth-child(even) .new-timeline-content::after {
	content: '';
	position: absolute;
	border-style: solid;
	border-width: 10px 10px 10px 0;
	border-color: transparent #fff transparent transparent;
	left: -10px;
	top: 30px;
}

.new-timeline-date {
	font-size: 18px;
	position: absolute;
	width: 120px;
	background: #003894;
	color: #fff;
	padding: 8px 15px;
	border-radius: 20px;
	font-weight: bold;
	text-align: center;
	box-shadow: 0 3px 10px rgba(0, 0, 0, 0.2);
}

.new-timeline-item:nth-child(odd) .new-timeline-date {
	right: -150px;
	top: 30px;
}

.new-timeline-item:nth-child(even) .new-timeline-date {
	left: -150px;
	top: 30px;
}

.new-timeline-content h2 {
	margin-bottom: 15px;
	color: #003894;
}

.new-timeline-content p {
	color: #555;
	margin-bottom: 15px;
}

.new-timeline-image-container {
	width: 100%;
	/*height: 200px;*/
	border-radius: 5px;
	overflow: hidden;
	margin-bottom: 15px;
	position: relative;
	background: #f5f5f5;
}

.new-timeline-image {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.3s ease;
}

.new-timeline-image-container:hover .new-timeline-image {
	transform: scale(1.05);
}

.new-timeline-image-placeholder {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	color: #999;
	font-size: 14px;
	text-align: center;
}

.new-timeline-icon {
	position: absolute;
	width: 40px;
	height: 40px;
	background: #fff;
	border: 4px solid #003894;
	border-radius: 50%;
	text-align: center;
	line-height: 32px;
	font-size: 18px;
	color: #003894;
	font-weight: bold;
	top: 30px;
}

.new-timeline-item:nth-child(odd) .new-timeline-icon {
	right: -62px;
}

.new-timeline-item:nth-child(even) .new-timeline-icon {
	left: -62px;
}


.timeline {
	position: relative;
	width: 100%;
	margin: 50px 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.timeline::before {
	content: '';
	position: absolute;
	width: 100%;
	height: 20px;
	background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" preserveAspectRatio="none"><path d="M0 50 Q 25 70 50 50 Q 75 30 100 50" stroke="blue" stroke-width="2" stroke-dasharray="5 5" fill="none"/></svg>');
	background-repeat: repeat-x;
	background-size: 100px 20px;
}

.timeline-item {
	position: relative;
	width: 12.5%;
	text-align: center;
	z-index: 1;
}

.timeline-year {
	font-weight: bold;
	margin-bottom: 10px;
}

.timeline-event {
	background-color: white;
	border: 1px solid #ccc;
	border-radius: 5px;
	padding: 10px;
	display: none;
	position: absolute;
	top: 50px;
	left: 50%;
	transform: translateX(-50%);
	width: 200px;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.timeline-item:hover .timeline-event {
	display: block;
}

.sailboat {
	position: absolute;
	width: 50px;
	height: auto;
	top: -25px;
	left: calc(12.5% - 25px);
	transition: left 0.5s ease;
}

.new-section {
	display: flex;
	margin-top: 50px;
}

.new-section-text {
	width: 50%;
	padding: 0px 20px  20px 0px;
	text-align: justify;
}

.new-section-image {
	width: 50%;
	padding: 0px 0px 0px 20px;
}

.new-section-image img {
	width: 100%;
	height: auto;
	object-fit: cover;
}
.overview-text {
	text-align: justify;
	text-align-last: left;
	word-spacing: -0.15em;
	line-height: 2;
	position: absolute;
	left: 0;
	width: 51%;
	height: 100%;
	background-color: rgba(0, 123, 255, 0.6);
	color: white;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 30px;
	animation: slideInLeft 0.8s ease-out;
	transition: background-color 0.3s ease;


	/*overflow: hidden; !* 默认隐藏溢出内容 *!*/
}
.overview-text p span{
	color:#fff;

}
.overview-text:hover {
	background-color: rgba(0, 56, 148, 0.8);
}
.school-overview {
	display: flex;
	align-items: center;
	position: relative;
	height: 500px;
	overflow: hidden;
}

.school-overview img {
	width: 100%;
	height: 500px;
	object-fit: cover;
	animation: fadeIn 1s ease-out;
}


@media (max-width: 920px) {
	.overview-text  {
		line-height: normal;
	}
}

@media (max-width: 600px) {
	.new-timeline::before {
		left: 40px;
	}

	.new-timeline-item {
		width: 100%;
		padding-left: 80px;
		padding-right: 20px;
	}


	.new-timeline-item:nth-child(even) {
		left: 0;
	}

	.new-timeline-item:nth-child(odd) .new-timeline-date,
	.new-timeline-item:nth-child(even) .new-timeline-date {
		left: 20px;
		right: auto;
		top: -20px;
	}

	.new-timeline-item:nth-child(odd) .new-timeline-icon,
	.new-timeline-item:nth-child(even) .new-timeline-icon {
		left: 20px;
		right: auto;
	}

	.new-timeline-item:nth-child(odd) .new-timeline-content::after,
	.new-timeline-item:nth-child(even) .new-timeline-content::after {
		left: 30px;
		border-width: 10px 10px 0;
		border-color: #fff transparent transparent;
		top: -10px;
	}
	.overview-text {
		padding: 15px;
		display: block; /* 改为块级元素以适应布局 */
		align-items: unset; /* 取消align-items */
		justify-content: unset; /* 取消justify-content */
		line-height: 0; /* 调整行高 */
		width: 100%; /* 占满整个父容器宽度 */
		height: auto; /* 自动高度 */
		overflow-y: auto; /* 启用垂直方向的滚动 */
		-webkit-overflow-scrolling: touch; /* 提升移动设备上的滚动体验 */
		box-sizing: border-box; /* 确保padding和border包含在元素的width和height内 */
    }
	.overview-text p span{
		color:#fff;
		font-size: 14px;
	}
	.overview-text p {
		color:#fff;
		font-size: 14px;
		line-height: 0; /* 调整行高 */
	}
	.new-timeline-content {
		padding: 15px;
		
	}
}


/* 教研团队***************************************************************************** */
.teacher-container {
	max-width: 1140px;
	margin: 30px auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 15px;
}

.teacher-card {
	position: relative;
	width: 32%;
	height: 80%;
	overflow: hidden;
	border-radius: 8px;
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
	transition: transform 0.3s ease;
}

.teacher-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2);
}

.teacher-image {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.3s ease, filter 0.3s ease;
}

.teacher-card:hover .teacher-image {
	transform: scale(1.1);
	filter: blur(3px);
}

.teacher-info {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	background-color: rgba(0, 123, 255, 0.8);
	color: white;
	padding: 15px;
	text-align: center;
	transition: bottom 0.3s ease, opacity 0.3s ease;
}

.teacher-name {
	font-size: 24px;
	font-weight: bold;
	margin-bottom: 5px;
}

.teacher-subject {
	font-size: 1.2rem;
}

.teacher-bio {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.8);
	color: white;
	padding: 20px;
	text-align: justify;
	line-height: 1.6;
	opacity: 0;
	transform: translateY(100%);
	transition: all 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

.teacher-bio h3 {
	font-size: 24px;
	margin-bottom: 10px;
	color: #007bff;
	opacity: 0;
	transform: translateY(20px);
	transition: opacity 0.3s ease 0.2s, transform 0.3s ease 0.2s;
}

.teacher-bio p {
	font-size: 1rem;
	margin-bottom: 10px;
	opacity: 0;
	transform: translateY(20px);
	transition: opacity 0.3s ease 0.3s, transform 0.3s ease 0.3s;
}

.teacher-bio ul {
	list-style-type: none;
	padding: 0;
}

.teacher-bio li {
	margin-bottom: 5px;
	opacity: 0;
	transform: translateY(20px);
	transition: opacity 0.3s ease 0.4s, transform 0.3s ease 0.4s;
	/*overflow: auto;*/
	/*overflow: scroll;*/
	/*border: 1px solid #ccc; !* 添加边框以便更直观地看到容器 *!*/
	padding: 10px; /* 内边距 */
	box-sizing: border-box; /* 确保 padding 和 border 不会影响宽高 */
}
.teacher-bio li {

	max-height: 450px;
	/*overflow: hidden; !* 隐藏滚动条 *!*/
	position: relative; /* 创建相对定位上下文 */
}

.teacher-bio li:hover {
	overflow: auto; /* 鼠标悬停时显示滚动条 */
}

/* 自定义滚动条样式（仅适用于 WebKit 浏览器，如 Chrome 和 Safari） */
.teacher-bio li::-webkit-scrollbar {
	width: 1px; /* 滚动条宽度 */
}

.teacher-bio li::-webkit-scrollbar-thumb {
	background-color: #1dff28; /* 滑块颜色 */
	border-radius: 4px; /* 滑块圆角 */
}

.teacher-bio li::-webkit-scrollbar-track {
	background-color: transparent; /* 轨道颜色 */
}


.teacher-bio .highlight {
	color: #007bff;
	font-weight: bold;
}

.teacher-card:hover .teacher-info {
	bottom: -100%;
	opacity: 0;
}

.teacher-card:hover .teacher-bio {
	opacity: 1;
	transform: translateY(0);
}

.teacher-card:hover .teacher-bio h3,
.teacher-card:hover .teacher-bio p,
.teacher-card:hover .teacher-bio li {
	opacity: 1;
	transform: translateY(0);
}

.staff-title {
	font-size: 28px;
	color: #003366;
	text-align: center;
	/* margin: 40px 0; */
	padding-bottom: 10px;
	/* border-bottom: 3px solid #003366; */
	display: inline-block;
}
@media (max-width: 768px) {
	.teacher-card {
		width: 48%;
	}
	.teacher-container {
		gap: 5px;
		margin: 0px auto;
	}
	.col-sm-12{
		padding-right: 1px;
		padding-left: 1px;
	}
	.teacher-subject {
		font-size: 14px;
	}
	.teacher-name {
		font-size: 13px;
	}
	.teacher-info {
		padding: 2px;

	}
	.teacher-bio h3 {
		font-size: 15px;
		margin-bottom: 10px;

	}

	.teacher-bio li {

		max-height: 260px;
		/*overflow: hidden; !* 隐藏滚动条 *!*/
		position: relative; /* 创建相对定位上下文 */
	}
	.teacher-bio {
		width: 100%;
		height: 100%;
		background-color: rgba(0, 0, 0, 0.8);
		color: white;
		padding: 2px;
		text-align: justify;
		 line-height: 1.2;

	}
	

}

