:root {
  --brand: #0054A6;
}

:root {
  --brand: #0054A6;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: "Microsoft YaHei", Arial, sans-serif;
  color: #333;
  line-height: 1.6;
  margin: 0;
  padding: 0;
}

/* 通用边距间距类 */
.mt-1 { margin-top: 0.25rem !important; }
.mt-2 { margin-top: 0.5rem !important; }
.mt-3 { margin-top: 1rem !important; }
.mt-4 { margin-top: 1.5rem !important; }
.mt-5 { margin-top: 3rem !important; }
.mb-1 { margin-bottom: 0.25rem !important; }
.mb-2 { margin-bottom: 0.5rem !important; }
.mb-3 { margin-bottom: 1rem !important; }
.mb-4 { margin-bottom: 1.5rem !important; }
.mb-5 { margin-bottom: 3rem !important; }
.ml-1 { margin-left: 0.25rem !important; }
.ml-2 { margin-left: 0.5rem !important; }
.ml-3 { margin-left: 1rem !important; }
.ml-4 { margin-left: 1.5rem !important; }
.ml-5 { margin-left: 3rem !important; }
.mr-1 { margin-right: 0.25rem !important; }
.mr-2 { margin-right: 0.5rem !important; }
.mr-3 { margin-right: 1rem !important; }
.mr-4 { margin-right: 1.5rem !important; }
.mr-5 { margin-right: 3rem !important; }
.mx-auto { margin-left: auto !important; margin-right: auto !important; }
.my-auto { margin-top: auto !important; margin-bottom: auto !important; }

/* 通用内边距类 */
.p-1 { padding: 0.25rem !important; }
.p-2 { padding: 0.5rem !important; }
.p-3 { padding: 1rem !important; }
.p-4 { padding: 1.5rem !important; }
.p-5 { padding: 3rem !important; }
.pt-1 { padding-top: 0.25rem !important; }
.pt-2 { padding-top: 0.5rem !important; }
.pt-3 { padding-top: 1rem !important; }
.pt-4 { padding-top: 1.5rem !important; }
.pt-5 { padding-top: 3rem !important; }
.pb-1 { padding-bottom: 0.25rem !important; }
.pb-2 { padding-bottom: 0.5rem !important; }
.pb-3 { padding-bottom: 1rem !important; }
.pb-4 { padding-bottom: 1.5rem !important; }
.pb-5 { padding-bottom: 3rem !important; }
.pl-1 { padding-left: 0.25rem !important; }
.pl-2 { padding-left: 0.5rem !important; }
.pl-3 { padding-left: 1rem !important; }
.pl-4 { padding-left: 1.5rem !important; }
.pl-5 { padding-left: 3rem !important; }
.pr-1 { padding-right: 0.25rem !important; }
.pr-2 { padding-right: 0.5rem !important; }
.pr-3 { padding-right: 1rem !important; }
.pr-4 { padding-right: 1.5rem !important; }
.pr-5 { padding-right: 3rem !important; }

/* 文字样式类 */
.text-primary { color: var(--brand) !important; }
.text-secondary { color: #666 !important; }
.text-muted { color: #999 !important; }
.text-dark { color: #333 !important; }
.text-light { color: #f8f9fa !important; }
.text-white { color: #fff !important; }
.text-black { color: #000 !important; }

/* 文字对齐类 */
.text-center { text-align: center !important; }
.text-left { text-align: left !important; }
.text-right { text-align: right !important; }
.text-justify { text-align: justify !important; }

/* 文本缩进类 */
.text-indent { text-indent: 2em !important; }
.text-indent-3 { text-indent: 3em !important; }
.text-indent-4 { text-indent: 4em !important; }
.text-indent-5 { text-indent: 5em !important; }
.text-indent-6 { text-indent: 6em !important; }
.text-indent-7 { text-indent: 7em !important; }
.text-indent-8 { text-indent: 8em !important; }
.text-indent-9 { text-indent: 9em !important; }
.text-indent-10 { text-indent: 10em !important; }

/* 文字粗细类 */
.font-weight-normal { font-weight: 400 !important; }
.font-weight-medium { font-weight: 500 !important; }
.font-weight-bold { font-weight: 700 !important; }

/* 文字大小类 */
.text-xs { font-size: 0.75rem !important; }
.text-sm { font-size: 0.875rem !important; }
.text-base { font-size: 1rem !important; }
.text-lg { font-size: 1.125rem !important; }
.text-xl { font-size: 1.25rem !important; }
.text-2xl { font-size: 1.5rem !important; }
.text-3xl { font-size: 1.875rem !important; }
.text-4xl { font-size: 2.25rem !important; }

/* 行高类 */
.line-height-1 { line-height: 1 !important; }
.line-height-2 { line-height: 1.2 !important; }
.line-height-3 { line-height: 1.4 !important; }
.line-height-4 { line-height: 1.6 !important; }
.line-height-5 { line-height: 2 !important; }

/* 显示类 */
.d-block { display: block !important; }
.d-inline { display: inline !important; }
.d-inline-block { display: inline-block !important; }
.d-flex { display: flex !important; }
.d-inline-flex { display: inline-flex !important; }
.d-none { display: none !important; }

/* Flex 布局类 */
.flex-row { flex-direction: row !important; }
.flex-column { flex-direction: column !important; }
.flex-wrap { flex-wrap: wrap !important; }
.justify-content-start { justify-content: flex-start !important; }
.justify-content-center { justify-content: center !important; }
.justify-content-end { justify-content: flex-end !important; }
.justify-content-between { justify-content: space-between !important; }
.justify-content-around { justify-content: space-around !important; }
.align-items-start { align-items: flex-start !important; }
.align-items-center { align-items: center !important; }
.align-items-end { align-items: flex-end !important; }
.align-items-stretch { align-items: stretch !important; }

/* 背景色类 */
.bg-primary { background-color: var(--brand) !important; }
.bg-secondary { background-color: #f8f9fa !important; }
.bg-light { background-color: #f8f9fa !important; }
.bg-dark { background-color: #343a40 !important; }
.bg-white { background-color: #fff !important; }
.bg-transparent { background-color: transparent !important; }

/* 边框类 */
.border { border: 1px solid #dee2e6 !important; }
.border-0 { border: 0 !important; }
.border-top { border-top: 1px solid #dee2e6 !important; }
.border-bottom { border-bottom: 1px solid #dee2e6 !important; }
.border-left { border-left: 1px solid #dee2e6 !important; }
.border-right { border-right: 1px solid #dee2e6 !important; }

/* 圆角类 */
.rounded { border-radius: 0.375rem !important; }
.rounded-0 { border-radius: 0 !important; }
.rounded-circle { border-radius: 50% !important; }
.rounded-top { border-top-left-radius: 0.375rem !important; border-top-right-radius: 0.375rem !important; }
.rounded-bottom { border-bottom-left-radius: 0.375rem !important; border-bottom-right-radius: 0.375rem !important; }

/* 阴影类 */
.shadow-sm { box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important; }
.shadow { box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important; }
.shadow-lg { box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important; }
.shadow-none { box-shadow: none !important; }

/* 过渡动画类 */
.transition-all { transition: all 0.3s ease !important; }
.transition-colors { transition: color 0.3s ease, background-color 0.3s ease, border-color 0.3s ease !important; }
.transition-transform { transition: transform 0.3s ease !important; }
.transition-opacity { transition: opacity 0.3s ease !important; }

/* 鼠标悬停效果类 */
.hover-lift:hover { transform: translateY(-2px) !important; }
.hover-shadow:hover { box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important; }
.hover-scale:hover { transform: scale(1.02) !important; }

/* 容器类 */
.container-fluid { width: 100% !important; padding-left: 15px !important; padding-right: 15px !important; margin-left: auto !important; margin-right: auto !important; }

/* 文本截断类 - 支持1-6行文字省略 */
.text-truncate { overflow: hidden !important; text-overflow: ellipsis !important; white-space: nowrap !important; }
.text-truncate-1 { overflow: hidden !important; text-overflow: ellipsis !important; white-space: nowrap !important; }
.text-truncate-2 { overflow: hidden !important; display: -webkit-box !important; -webkit-line-clamp: 2 !important; -webkit-box-orient: vertical !important; }
.text-truncate-3 { overflow: hidden !important; display: -webkit-box !important; -webkit-line-clamp: 3 !important; -webkit-box-orient: vertical !important; }
.text-truncate-4 { overflow: hidden !important; display: -webkit-box !important; -webkit-line-clamp: 4 !important; -webkit-box-orient: vertical !important; }
.text-truncate-5 { overflow: hidden !important; display: -webkit-box !important; -webkit-line-clamp: 5 !important; -webkit-box-orient: vertical !important; }
.text-truncate-6 { overflow: hidden !important; display: -webkit-box !important; -webkit-line-clamp: 6 !important; -webkit-box-orient: vertical !important; }

/* 清除浮动 */
.clearfix::after { content: "" !important; display: table !important; clear: both !important; }

.nav-link {
  padding: 0.5rem 1rem;
}
.nav-link.active, .nav-link:hover {
  color: #0054A6 !important;
}

:root {
  --brand: #0054A6;
}

.section-title {
  text-align: center;
  margin: 64px 0 36px;
  position: relative;
  height: 66px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.section-title img {
  width: 456px;
  height: 42px;
  object-fit: contain;
  /*max-width: 282px;*/
  /*max-height: 66px;*/
}
.section-title .title-image {
  width: 282px;
  height: 66px;
  object-fit: contain;
  display: block;
}
.section-title small {
  display: block;
  color: #999;
  margin-top: 0.25rem;
  font-size: 0.85rem;
}

.full-width-image-section {
  width: 100vw !important;
  margin-left: calc(-50vw + 50%) !important;
  height: 480px !important;
  min-height: 480px !important;
  position: relative;
  overflow: hidden;
  display: block;
}
.full-width-image-section .image-placeholder {
  width: 100% !important;
  height: 100% !important;
  min-height: 480px !important;
  background: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%);
  display: flex !important;
  align-items: center;
  justify-content: center;
  position: relative;
  box-sizing: border-box;
  overflow: hidden;
}
.full-width-image-section .image-placeholder .placeholder-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.full-width-image-section .image-placeholder .placeholder-content {
  text-align: center;
  color: #666;
}
.full-width-image-section .image-placeholder .placeholder-content .placeholder-text {
  display: block;
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 10px;
}
.full-width-image-section .image-placeholder .placeholder-content .placeholder-dimensions {
  display: block;
  font-size: 14px;
  color: #999;
}
.full-width-image-section .image-placeholder:hover {
  background: linear-gradient(135deg, #e3f2fd 0%, #bbdefb 100%);
  border-color: #2196f3;
}

:root {
  --brand: #0054A6;
}

footer {
  background: #f7f7f7;
}
footer .footer-logo {
  /*height: 44px;*/
}
footer .copyright {
  border-top: 1px solid #eaeaea;
  color: #666;
}

.footer-bg {
  background: url("../images/footer_bg.png") center/cover no-repeat;
  position: relative;
  padding: 40px 0;
  color: #333333;
}
.footer-bg .container {
  position: relative;
  z-index: 2;
}
.footer-bg .footer-header {
  display: flex;
  align-items: center;
  margin-bottom: 20px;
}
.footer-bg .footer-header .footer-logo {
  margin-right: 20px;
}
.footer-bg .footer-header .footer-logo .logo-img {
  height: 50px;
  width: auto;
}
.footer-bg .footer-header .company-name h1 {
  font-size: 24px;
  font-weight: 700;
  color: #333333;
  margin: 0;
}
.footer-bg .footer-divider {
  width: 100vw;
  height: 1px;
  background: #cccccc;
  margin: 20px calc(-50vw + 50%);
}
.footer-bg .footer-content {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.footer-bg .footer-content .contact-info {
  flex: 1;
}
.footer-bg .footer-content .contact-info h2 {
  font-family: "PingFang SC";
  font-weight: 800;
  font-size: 22px;
  color: #000000;
  line-height: 30px;
  margin-bottom: 20px;
}
.footer-bg .footer-content .contact-info .contact-item {
  display: flex;
  align-items: center;
  margin-bottom: 15px;
}
.footer-bg .footer-content .contact-info .contact-item .contact-icon {
  width: 20px;
  height: 20px;
  margin-right: 10px;
}
.footer-bg .footer-content .contact-info .contact-item span {
  font-weight: 400;
  font-size: 18px;
  color: #000000;
  line-height: 38px;
}
.footer-bg .footer-content .footer-qrcode {
  text-align: center;
}
.footer-bg .footer-content .footer-qrcode .qrcode-img {
  width: 120px;
  height: 120px;
  margin-bottom: 10px;
}
.footer-bg .footer-content .footer-qrcode .qrcode-caption {
  font-size: 14px;
  color: #333333;
}
.footer-bg .footer-copyright {
  text-align: center;
  margin-top: 30px;
  padding-top: 20px;
  border-top: 1px solid #cccccc;
}
.footer-bg .footer-copyright p {
  font-family: "PingFang SC";
  font-size: 14px;
  color: #666666;
  margin: 5px 0;
}

.breadcrumb-section {
  background-color: #F6F6F6;
  height: 70px;
  padding: 0;
  border-bottom: 1px solid #dee2e6;
}
.breadcrumb-section .breadcrumb-nav-wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 20px;
  height: 70px;
  min-height: 40px;
}
.breadcrumb-section .breadcrumb-left {
  display: flex;
  align-items: center;
}
.breadcrumb-section .breadcrumb-left .breadcrumb {
  margin: 0;
  background: none;
  padding: 0;
  display: flex;
  align-items: center;
}
.breadcrumb-section .breadcrumb-left .breadcrumb .breadcrumb-item {  
  font-size: 14px;  
  color: #666;  
  position: relative;  
  margin-right: 10px;  
  display: flex;  
  align-items: center;
}

/* 修改面包屑导航分隔符为 > */
.breadcrumb-section .breadcrumb-left .breadcrumb .breadcrumb-item::before {
  content: ">" !important;
  margin: 0 0px;
  color: #666;
}
.breadcrumb-section .breadcrumb-left .breadcrumb .breadcrumb-item:first-child::before {
  content: none !important;
}
.breadcrumb-section .breadcrumb-left .breadcrumb .breadcrumb-item:last-child::after {
  content: none;
}
.breadcrumb-section .breadcrumb-left .breadcrumb .breadcrumb-item a {
  color: #666;
  text-decoration: none;
}
.breadcrumb-section .breadcrumb-left .breadcrumb .breadcrumb-item a:hover {
  color: #0054A6;
}
.breadcrumb-section .breadcrumb-left .breadcrumb .breadcrumb-item.active {
  color: #0054A6;
}
.breadcrumb-section .breadcrumb-right {
  display: flex;
  align-items: center;
}
.breadcrumb-section .breadcrumb-right .category-nav {
  display: flex;
  justify-content: flex-end;
  flex-wrap: nowrap;
  gap: 20px;
  align-items: center;
}
.breadcrumb-section .breadcrumb-right .category-nav .category-nav-link {
  border: none;
  color: #666;
  font-weight: normal;
  padding: 0;
  background: none;
  text-decoration: none;
  font-size: 14px;
  transition: color 0.3s ease;
}

.info-title-banner {
  width: 100vw;
  margin-left: calc(-50vw + 50%);
  overflow: hidden;
  position: relative;
  height: 480px;
}
.info-title-banner .title-banner-image {
  width: 100%;
  height: 480px;
  display: block;
  object-fit: cover;
}


a {
  color: #333 !important;
  text-decoration: none !important;
}

a:hover {
  text-decoration: underline !important;
}

/* Pagination */
.pagination-area {
  text-align: center;
  margin-top: 40px;
}
.pagination-area ul {
  display: inline-block;
  padding: 0;
  margin: 0;
  list-style: none;
}
.pagination-area li {
  display: inline-block;
  margin: 0 4px;
}
.pagination-area .page-link {
  display: block;
  min-width: 36px;
  height: 36px;
  line-height: 36px;
  padding: 0 12px;
  border: 1px solid #dee2e6;
  background: #FFFFFF;
  color: #333333 !important;
  text-decoration: none !important;
  border-radius: 4px;
}
.pagination-area .page-link:hover {
  background: #f5faff;
  border-color: #0054A6;
  color: #0054A6 !important;
  text-decoration: none !important;
}
.pagination-area .page-item.active .page-link {
  background: #0054A6;
  border-color: #0054A6;
  color: #FFFFFF !important;
}
.pagination-area .page-item.disabled .page-link,
.pagination-area .page-item.disabled span.page-link {
  background: #F5F5F5;
  color: #999999 !important;
  border-color: #e5e5e5;
  cursor: default;
} 