* { box-sizing: border-box; }
body {
  margin: 0;
  background: #f7f7f7;
  color: #333;
  font-family: "Microsoft YaHei", "PingFang SC", "Heiti SC", sans-serif;
  font-size: 14px;
}
a { color: #015293; text-decoration: none; }
a:hover { color: #c0392b; }
img { border: 0; max-width: 100%; }
.wrap { width: 1100px; margin: 0 auto; }

.header {
  height: 140px;
  background: #1f7ec8 url("../assets/index_bg.jpg") center top / cover no-repeat;
}
.header .wrap {
  height: 140px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: url("../assets/head_bg.png") no-repeat 420px bottom;
}
.logo img { display: block; width: 359px; height: 76px; }
.search {
  width: 310px; height: 38px; border-radius: 19px; background: #f3f8fc;
  border: 1px solid #d7e5f3; display: flex; overflow: hidden;
}
.search input {
  flex: 1; border: 0; background: transparent; outline: none;
  padding: 0 16px; color: #3c74c0; font-family: inherit;
}
.search button {
  width: 52px; border: 0; background: #015293; color: #fff; cursor: pointer; font-family: inherit;
}

.nav { background: #015293; height: 56px; }
.nav ul { list-style: none; margin: 0; padding: 0; display: flex; width: 1100px; }
.nav li { flex: 1; }
.nav a {
  display: block; text-align: center; line-height: 56px; color: #fff;
  font-size: 16px; border-left: 1px solid #2671ac;
}
.nav li:first-child a { border-left: 0; }
.nav a:hover, .nav a.on { background: #1571bb; color: #fff; }

.crumb { background: #f2f2f2; }
.crumb .wrap { height: 40px; display: flex; align-items: center; justify-content: space-between; color: #888; }
.crumb a { color: #888; }

.banner { position: relative; height: 340px; background: #ddd; overflow: hidden; margin-top: 0; }
.banner img { width: 1100px; height: 340px; object-fit: cover; display: none; }
.banner img.on { display: block; }
.dots { position: absolute; left: 0; right: 0; bottom: 12px; text-align: center; }
.dots b {
  display: inline-block; width: 42px; height: 8px; margin: 0 3px;
  background: #000; opacity: .45; cursor: pointer;
}
.dots b.on { background: #f60; opacity: 1; }

.block { margin: 16px auto; }
.latest { display: flex; gap: 20px; }
.latest-news { flex: 1; background: #fff; display: flex; min-height: 96px; }
.latest-news h3 {
  width: 110px; margin: 0; background: #015293; color: #fff;
  display: flex; align-items: center; justify-content: center; text-align: center; font-size: 20px; font-weight: normal;
}
.latest-news ul { list-style: none; margin: 0; padding: 8px 16px; flex: 1; }
.latest-news li { line-height: 26px; display: flex; gap: 12px; }
.latest-news span, .news-list span { color: #999; flex: none; }
.slogan {
  width: 420px; background: #1571bb; color: #fff; display: flex; align-items: center; justify-content: center;
  text-align: center; font-size: 22px; line-height: 1.6; letter-spacing: 1px;
}

.cols { display: flex; gap: 20px; }
.panel { flex: 1; background: #fff; }
.panel h3 {
  margin: 0; background: #015293; color: #fff; font-weight: normal; font-size: 16px;
  height: 40px; line-height: 40px; padding: 0 14px; display: flex; justify-content: space-between;
}
.panel h3 a, .panel h3 a:hover { color: #fff; }
.news-list { list-style: none; margin: 0; padding: 6px 0; }
.news-list li { display: flex; gap: 12px; padding: 7px 14px; border-bottom: 1px dashed #eee; }
.news-list a { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }

.tabs { background: #fff; }
.tab-bar { display: flex; background: #e8eef5; }
.tab-bar a { padding: 10px 22px; color: #015293; }
.tab-bar a.on { background: #015293; color: #fff; }
.feature { display: flex; gap: 20px; padding: 16px; }
.feature .lead { width: 46%; }
.feature h2 { margin: 0 0 8px; font-size: 18px; font-weight: normal; }
.feature .excerpt { color: #666; line-height: 1.8; margin: 0; }
.feature .more { color: #c0392b; }

.cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.card-link {
  display: block; background: #fff; min-height: 86px; padding: 16px 14px;
  border-top: 3px solid #015293; color: #333; line-height: 1.6;
}
.card-link:hover { color: #015293; }

.page { background: #fff; padding: 22px 28px 48px; min-height: 520px; margin: 16px auto 0; }
.page h1 { margin: 0; font-size: 22px; font-weight: normal; color: #222; line-height: 1.5; }
.meta { color: #999; margin: 10px 0 18px; }
.article { font-size: 16px; line-height: 2; color: #333; }
.article p { margin: 0 0 1em; text-indent: 2em; }
.article img { display: block; max-width: 720px; height: auto; margin: 8px auto 16px; text-indent: 0; }
.pager { margin-top: 28px; padding-top: 12px; border-top: 1px solid #eee; color: #666; line-height: 1.8; }

.query { display: flex; gap: 24px; }
.qbox { flex: 1; background: #fff; padding: 22px 24px 28px; border-top: 4px solid #015293; }
.qbox h2 { margin: 0 0 8px; font-size: 20px; font-weight: normal; color: #015293; }
.qbox label { display: block; margin: 14px 0 6px; }
.qbox input { width: 100%; height: 36px; border: 1px solid #ccc; padding: 0 10px; font-family: inherit; }
.qbox button {
  margin-top: 16px; height: 36px; padding: 0 28px; background: #015293; color: #fff;
  border: 0; cursor: pointer; font-family: inherit;
}
.hint { color: #888; font-size: 12px; margin-top: 10px; }
.result { margin-top: 14px; padding: 12px 14px; background: #f7f7f7; line-height: 1.8; }
.result.ok { border-left: 4px solid #015293; }
.result.no { border-left: 4px solid #c0392b; }
.cha04 { background: #fff; margin-top: 16px; padding: 18px 22px 28px; }
.cha04 h4 { margin: 0 0 14px; font-size: 18px; font-weight: normal; }
.cha04 table { width: 100%; border-collapse: collapse; }
.cha04 td { border: 1px solid #e6e6e6; padding: 10px 14px; }
.cha04 .td01 { width: 110px; background: #f6f8fb; color: #015293; }

.links { background: #fff; margin-top: 16px; padding: 16px 0 8px; }
.links h3 { margin: 0 0 10px; color: #a1a1a1; font-weight: normal; font-size: 18px; }
.links a { display: inline-block; margin: 0 18px 10px 0; color: #666; }

.footer { margin-top: 18px; background: #fff; color: #888; font-size: 12px; line-height: 1.9; text-align: center; padding: 18px 0 28px; }
