/* index.css —— 全站基础样式：重置/页面背景、顶部top1、导航栏、通用模块标题栏、页脚body3 */

* { margin: 0; padding: 0; box-sizing: border-box; }
body {
  font-family: "微软雅黑", "Microsoft YaHei", sans-serif;
  /* 整页背景图：固定定位不随滚动移动；宽度填满，整体向上平移200px */
  background: #f2f4f8 url("../img/bg1.png") no-repeat fixed center -200px / 100% auto;
}
.page {
  width: 1920px;
  margin: 0 auto;
}

/* ==================== top1：顶部区域 ==================== */
.top1 {
  position: relative;
  width: 1920px;
  height: 200px;
  /* 背景图未找到时先用底色代替 */
  background: #dfe8f4 url("../img/top1bg.png") no-repeat center / 100% 100%;
}
.top1 .logo {
  position: absolute;
  left: 120px;
  top: 50%;
  /* 等比例缩小一半，以左侧中点为缩放原点（保持距左120px且垂直居中） */
  transform: translateY(-50%) scale(0.5);
  transform-origin: left center;
  max-height: 160px;
}
/* 搜索框：距右侧120px，300x50，白底黑边，圆角20 */
.top1 .search-box {
  position: absolute;
  right: 120px;
  top: 50%;
  transform: translateY(-50%);
  width: 300px;
  height: 50px;
}
.top1 .search-box input {
  width: 100%;
  height: 100%;
  background: #fff;
  border: 1px solid #000;
  border-radius: 20px;
  outline: none;
  padding: 0 50px 0 20px;
  font-size: 14px;
  font-family: inherit;
  color: #313131;
}
/* 搜索按钮：用放大镜图片代替“搜索”文字，位置与尺寸同原来的放大镜（右侧10px、垂直居中、24x24） */
.top1 .search-box input[type="submit"] {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  width: 24px;
  height: 24px;
  padding: 0;
  border: none;
  background: transparent url("../img/fdj.png") no-repeat center / contain;
  color: transparent; /* 隐藏 value="搜索" 文字，只留图片 */
  font-size: 0;
  cursor: pointer;
}
/* 搜索图标链接：距搜索框右侧10px，垂直居中 */
.top1 .search-box .fdj-link {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  line-height: 0;
}
.top1 .search-box .fdj-link .fdj {
  display: block;
  height: 24px;
  width: auto;
}

/* ==================== 导航栏：1700x65，背景图 dhbg.png ==================== */
/* position:sticky：页面下滑时吸附窗口顶部；进入页面时整体从左侧拉出 */
.nav {
  position: sticky;
  top: 0;
  z-index: 100; /* 吸顶后悬浮在其他内容上方 */
  height: 65px;
  /* 背景透明，仅保留 dhbg.png 背景图 */
  background: transparent url("../img/dhbg.png") no-repeat left top / 1700px 65px;
  /* 入场动画：从左侧拉出（-100% 滑到原位），cubic-bezier 先快后缓 */
  animation: nav-in 2.5s cubic-bezier(0.22, 1, 0.36, 1) both;
}
@keyframes nav-in {
  from { transform: translateX(-100%); }
  to   { transform: translateX(0); }
}
/* 吸顶状态：吸附到窗口顶部后，下底边加投影（由JS滚动检测切换.nav-fixed） */
/* 阴影长度与背景图 dhbg.png 等宽（1700px），右侧220px无阴影 */
.nav.nav-fixed::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  width: 1700px; /* 与背景图等长 */
  height: 15px;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.18), rgba(0, 0, 0, 0));
  pointer-events: none; /* 不遮挡阴影下方的交互 */
}
.nav .nav-list {
  position: relative;
  display: flex;
  height: 65px;
  margin-left: 120px; /* 第一个选项距左侧120px */
  list-style: none;
}
.nav .nav-list > li {
  position: relative;
  width: 180px;
  height: 64px;
  line-height: 64px;
  text-align: center;
  font-size: 22px;
  color: #313131;
  background: #fff;
  white-space: nowrap;
}
.nav .nav-list > li > a {
  display: block;
  width: 100%;
  height: 100%;
  color: inherit;
  text-decoration: none;
}
/* 一级栏目鼠标经过：字体颜色和背景色反转，并弹出二级栏目 */
.nav .nav-list > li:hover {
  background: #313131;
  color: #fff;
}
/* 二级栏目 */
.nav .nav-list > li > .submenu {
  display: none;
  position: absolute;
  top: 65px;
  left: 0;
  width: 180px;
  list-style: none;
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
}
.nav .nav-list > li:hover > .submenu {
  display: block;
}
/* 单行时高65px与原样一致，文字过长自动换行时盒子随之增高 */
.nav .nav-list > li > .submenu li {
  width: 180px;
  min-height: 65px;
  text-align: center;
  font-size: 18px;
  color: #313131;
  background: #fff;
  /* 必须显式覆盖：一级栏目的 nowrap 会被二级 li 继承，不写这行就不会折行 */
  white-space: normal;
}
/* flex居中：单行垂直居中，多行整块居中文案仍水平居中 */
.nav .nav-list > li > .submenu li a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 65px;
  padding: 10px 12px; /* 左右留白，换行后文字不贴边 */
  box-sizing: border-box;
  line-height: 1.4;
  text-align: center;
  word-break: break-word; /* 长英文/数字也能断行 */
  color: inherit;
  text-decoration: none;
}
/* 二级栏目选项鼠标经过 */
.nav .nav-list > li > .submenu li:hover {
  background: #425275;
  color: #fff;
}

/* ==================== 通用模块标题栏：宽100%高75px ==================== */
/* 新闻动态/通知公告/竞赛信息/友情链接共用 */
.module-title {
  width: 100%;
  height: 75px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 25px 0 24px; /* 标题距左24px，更多+距右25px */
}
.module-title h3 {
  font-size: 34px;
  font-weight: bold;
  color: #494949;
}
.module-title a {
  font-size: 16px;
  color: #666;
  text-decoration: none;
}

/* ==================== body3：页脚（左logo + 右侧联系我们） ==================== */
.body3 {
  width: 1920px;
  /* margin: 30px auto 0; */
  padding: 30px 0 22px;
  background: #fff; /* 白底 */
  display: flex;
  align-items: center;
}
/* 左侧学院logo：距左240px，高240px */
.body3 .footer-logo {
  flex: none;
  margin-left: 240px;
}
.body3 .footer-logo img {
  display: block;
  height: 135px; /* 高度135px，宽度按比例自动缩放 */
  width: auto;
}
/* 右侧信息块：「联系我们」标题 + 三行信息，与logo垂直居中 */
.body3 .footer-right {
  flex: none;
  margin-left: 150px;
  display: flex;
  align-items: flex-start;
}
.body3 .footer-right .footer-title {
  flex: none;
  font-size: 16px;
  font-weight: bold;
  color: #494949;
  line-height: 114px;
}
.body3 .footer-right .footer-info {
  flex: none;
  margin-left: 30px;
  display: flex;
  flex-direction: column;
  gap: 27px;
}
.body3 .footer-right .footer-info p {
  font-size: 14px;
  color: #333;
  line-height: 20px;
  white-space: nowrap;
}