/* 底部样式 - footer.css */

/* 主容器样式 */
footer {
  background-color: #000;
  color: #fff;
}
footer .container {
  max-width: 1200px;
}
/* 容器内边距 */

footer .container.py-5 {
  padding-top: 3rem !important;
  padding-bottom: 3rem !important;
}

/* Logo和图片样式 */
footer .mb-4 img {
  max-width: 150px;
}

footer .footer-logo-img {
  max-width: 120px;
  height: auto;
}

footer .footer-qrcode {
  max-width: 120px;
  margin: 0 auto;
  width: 100%;
  min-width: 59%;
}

/* 页脚列样式 */
footer .footer-logo-column,
footer .footer-links-column,
footer .footer-contact-column {
  padding: 0px;
}

footer .contact-info-wrapper {
  width: 100%;
}

/* 页脚标题样式 */
footer .footer-title {
  color: #fff;
  font-size: 1.5rem;
  font-weight: 600;
  margin-bottom: 20px;
  position: relative;
  padding-bottom: 40px;
}

/* 底部链接列表样式 */
footer .list-unstyled {
  padding-left: 0;
  list-style: none;
  margin-bottom: 0;
}

footer .list-unstyled li.mb-2 {
  margin-bottom: 0.5rem;
}

footer .text-secondary {
  color: #fff !important;
}

footer a.text-secondary {
  text-decoration: none;
  transition: color 0.3s ease;
  font-size: 1.1rem;
}

footer a.text-secondary:hover {
  color: #4698ff !important;
}

/* 联系信息部分 */
footer .contact-info {
  font-size: 1.1rem; /* 17.6px - 与标题和链接保持一致 */
  line-height: 1.8rem;
  color: #6c757d;
  text-align: start !important;
  word-wrap: break-word;
  overflow-wrap: break-word;
  max-width: 100%;
}

/* 联系我们列样式调整 */

footer .col-lg-3.text-lg-end .d-flex {
  justify-content: flex-start !important;
}

footer .contact-info .text-nowrap {
  transition: color 0.3s ease;
}

footer .contact-info .text-nowrap:hover {
  color: #4698ff !important;
}

/* 文本换行控制 */
footer .text-nowrap {
  white-space: nowrap !important;
  word-break: normal;
}

/* 联系信息中的地址允许换行 */
footer .contact-info .text-nowrap {
  white-space: normal !important;
  word-wrap: break-word;
  overflow-wrap: break-word;
  line-height: 1.6;
  font-size: 1.1rem;
}

footer .mb-1 {
  margin-bottom: 0.25rem !important;
}

/* 底部空间间距 */
footer .row.mb-5 {
  margin-bottom: 3rem !important;
  display: flex;
  align-items: baseline;
  padding: 0;
  width: 100%;
  margin: 0 auto;
}

/* 底部版权信息部分 */
footer .border-top-container {
  border-top: 1px solid #4a4a4a;
}

footer .py-3 {
  padding-top: 1rem !important;
  padding-bottom: 1rem !important;
}

footer .no-margin-padding {
  margin: 0px !important;
  padding-top: 10px !important;
  padding-bottom: 10px !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* 版权信息左侧区域 */
footer .col-lg-8.no-margin-padding {
  margin: 0px !important;
  padding: 0px !important;
}

footer .copyright-text {
  font-size: 1rem !important; /* 12px */
  margin-bottom: 0.5rem !important;
  color: #fff !important;
}

footer .mb-2 {
  margin-bottom: 0.5rem !important;
}

footer .mb-lg-0 {
  margin-bottom: 0 !important;
  text-align: center;
}

/* 底部链接样式 */
footer .footer-link {
  font-size: 1rem; /* 12px */
  color: #fff !important;
  text-decoration: none;
}

footer .footer-link:hover {
  color: #4698ff !important;
}

footer .footer-link:last-child {
  margin-right: 0 !important;
}

/* 公安网备区域 */
footer .col-lg-4.no-margin-padding {
  margin: 0px !important;
  padding: 0px !important;
}

footer .d-flex.align-items-center {
  display: flex !important;
  align-items: center !important;
}

footer .justify-content-lg-end {
  justify-content: flex-end !important;
}

footer .police-badge {
  height: 16px;
  margin-right: 10px;
}

footer .police-text {
  margin-left: 0.25rem !important;
  font-size: 0.75rem; /* 12px */
  color: #fff !important;
  transition: color 0.3s ease;
}

footer .police-text:hover {
  color: #4698ff !important;
}
/* 联系表单样式 */
.contact-form-box h2,
.contact-form-box h3 {
  font-size: 2.6rem;
  color: #1a1a1a;
  margin-bottom: 20px;
  font-weight: 700;
}
/* 响应式调整 */
@media (min-width: 1024px) {
  footer .footer-title {
    font-size: 1.2rem;
  }
  footer .contact-info .text-nowrap {
    font-size: 1rem;
  }
  footer a.text-secondary {
    font-size: 1rem;
  }
}
@media (max-width: 992px) {
  footer .justify-content-lg-end {
    justify-content: flex-start !important;
  }

  footer .mb-3.mb-lg-0 {
    margin-bottom: 1rem !important;
  }

  footer .mb-lg-0 {
    margin-bottom: 1rem !important;
  }

  footer .col-lg-3.text-lg-end .footer-title {
    text-align: center !important;
  }
  .contact-form-box h2,
  .contact-form-box h3 {
    font-size: 2.2rem; /* 平板端字号 */
    margin-bottom: 10px;
  }
}

/* 平板端优化 (768px - 991px) */
@media (min-width: 768px) and (max-width: 991px) {
  /* 容器padding调整 */
  footer .container {
    padding-left: 20px !important;
    padding-right: 20px !important;
    max-width: 100%;
  }

  footer .container.py-5 {
    padding-top: 2rem !important;
    padding-bottom: 2rem !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  /* Logo调整 */
  footer .mb-4 img {
    max-width: 130px;
    margin-bottom: 25px;
  }

  /* 标题样式 */
  footer .footer-title {
    font-size: 1.2rem; /* 13px */
    margin-bottom: 15px;
    padding-bottom: 15px;
    text-align: center !important;
  }

  /* 行布局调整 */
  footer .row.mb-5 {
    margin-bottom: 1.5rem !important;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-left: -10px;
    margin-right: -10px;
  }

  /* 列布局优化 - 新布局结构 */
  /* 第一列（logo和二维码）单独一行居中显示 */
  footer .footer-logo-column {
    width: 100%;
    flex: 0 0 100%;
    max-width: 100%;
    margin-bottom: 30px;
    text-align: center !important;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 0 10px;
  }

  footer .footer-logo-img {
    max-width: 120px;
    margin: 0 auto 20px;
  }

  footer .mb-4 {
    padding-bottom: 0px !important;
  }

  footer .footer-qrcode {
    min-width: 140px;
    width: 100%;
    margin: 0 auto;
  }

  /* 第二列和第三列并排显示 */
  footer .footer-links-column:nth-child(2),
  footer .footer-links-column:nth-child(3) {
    width: 50%;
    flex: 0 0 50%;
    max-width: 50%;
    padding: 0 10px;
    margin-bottom: 30px;
    text-align: center;
    box-sizing: border-box;
  }

  /* 第四列单独一行居中 */
  footer .footer-contact-column {
    width: 100%;
    flex: 0 0 100%;
    max-width: 100%;
    padding: 0 10px;
    margin-bottom: 30px;
    text-align: center !important;
    box-sizing: border-box;
  }

  /* 所有列的标题居中 */
  footer .footer-links-column:nth-child(2) .footer-title,
  footer .footer-links-column:nth-child(3) .footer-title,
  footer .footer-contact-column .footer-title {
    text-align: center;
  }

  /* 列表项居中 */
  footer .footer-links-column .list-unstyled,
  footer .footer-contact-column .list-unstyled {
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  /* 联系信息区域样式 */
  footer .col-lg-3.text-lg-end {
    margin-left: 0;
    text-align: center !important;
  }

  footer .d-flex.align-items-start.justify-content-end,
  footer .contact-info-wrapper {
    justify-content: center !important;
    align-items: center !important;
  }

  footer .contact-info {
    font-size: 0.8125rem; /* 13px */
    line-height: 1.5rem;
    text-align: center !important;
    word-wrap: break-word;
    overflow-wrap: break-word;
    max-width: 100%;
    padding: 0 10px;
  }

  /* 适配版权区域 */
  footer .container.py-3,
  footer .no-margin-padding {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  footer a.text-secondary {
    font-size: 1rem;
  }

  footer .contact-info .text-nowrap {
    font-size: 1rem;
  }
  /* 版权信息区域居中 */
  footer .copyright-text {
    text-align: center;
    word-wrap: break-word;
    overflow-wrap: break-word;
  }

  footer .border-top-container .row > div {
    text-align: center !important;
    justify-content: center !important;
    padding: 0 10px;
  }

  footer .d-flex.align-items-center.justify-content-lg-end {
    justify-content: center !important;
    margin-top: 10px;
  }

  /* 文本换行处理 */
  footer .text-nowrap {
    white-space: normal !important;
    word-wrap: break-word;
    overflow-wrap: break-word;
  }
}

/* 移动端优化 (481px - 767px) */
@media (max-width: 767px) {
  /* 容器padding调整 */
  footer .container {
    padding-left: 15px !important;
    padding-right: 15px !important;
    max-width: 100%;
  }

  footer .container.py-5 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
  }

  /* 标题样式 */
  footer .footer-title {
    font-size: 1rem; /* 14px */
    margin-bottom: 15px;
    padding-bottom: 10px;
    font-weight: bold;
    text-align: center;
  }

  /* 行布局调整 */
  footer .row.mb-5 {
    margin-bottom: 1rem !important;
    display: flex;
    flex-direction: column;
    padding: 0;
    margin-left: 0;
    margin-right: 0;
  }

  /* 列布局优化 - 所有列居中 */
  footer .col-lg-3,
  footer .footer-logo-column,
  footer .footer-links-column,
  footer .footer-contact-column {
    width: 100%;
    flex: 0 0 100%;
    max-width: 100%;
    margin-bottom: 25px;
    padding: 0;
    text-align: center !important;
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  /* 链接样式 */
  footer .list-unstyled {
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  footer .list-unstyled li.mb-2 {
    margin-bottom: 10px !important;
  }

  footer a.text-secondary {
    font-size: 0.9rem; /* 14px */
  }

  footer .contact-info .text-nowrap {
    font-size: 0.9rem;
  }

  /* Logo和二维码样式 */
  footer .mb-4 img {
    max-width: 120px;
    margin-bottom: 20px;
  }

  footer .footer-logo-img {
    max-width: 120px;
    margin: 0 auto 20px;
  }

  footer .mb-4 {
    padding-bottom: 0px !important;
  }

  footer .footer-qrcode {
    min-width: 80px;
    width: 100%;
    margin: 0 auto 20px;
  }

  /* 联系信息布局 */
  footer .col-lg-3.text-lg-end {
    margin-left: 0;
  }

  footer .d-flex.align-items-start.justify-content-end,
  footer .contact-info-wrapper {
    justify-content: center !important;
    align-items: center !important;
  }

  footer .contact-info {
    text-align: center !important;
    font-size: 0.875rem; /* 14px */
    line-height: 1.8rem;
    word-wrap: break-word;
    overflow-wrap: break-word;
    max-width: 100%;
    padding: 0 15px;
  }

  /* 底部padding调整 */
  footer .container.py-3,
  footer .no-margin-padding {
    padding-left: 15px !important;
    padding-right: 15px !important;
  }

  footer .copyright-text {
    text-align: center;
    font-size: 0.9rem;
  }

  footer .mb-3.mb-lg-0 {
    text-align: center;
  }

  footer .footer-link {
    font-size: 0.9rem;
  }

  footer .police-badge {
    height: 14px;
  }

  footer .police-text {
    font-size: 0.75rem;
  }

  /* 版权信息部分居中 */
  footer .border-top-container .row > div {
    text-align: center !important;
    justify-content: center !important;
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  footer .d-flex.align-items-center.justify-content-lg-end {
    justify-content: center !important;
    margin-top: 10px;
  }

  .contact-form-box h2 {
    font-size: 1.8rem; /* 移动端字号 */
    margin-bottom: 10px;
  }

  .contact-form-box h3 {
    font-size: 1.5rem; /* 移动端字号 */
    margin-bottom: 20px;
  }
}

/* 小屏幕移动端优化 (≤480px) */
@media (max-width: 480px) {
  /* 容器padding调整 */
  footer .container {
    padding-left: 10px !important;
    padding-right: 10px !important;
    max-width: 100%;
  }

  footer .container.py-5 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  /* Logo调整 */
  footer .mb-4 img {
    max-width: 100px;
    margin-bottom: 15px;
  }

  /* 标题样式 */
  footer .footer-title {
    font-size: 1.1rem;
    margin-bottom: 10px;
    padding-bottom: 8px;
  }

  /* 行布局调整 */
  footer .row.mb-5 {
    margin-bottom: 0.5rem !important;
    margin: 0px;
    padding: 0;
  }

  /* 二维码样式 */
  footer .footer-qrcode {
    max-width: 100px;
    margin-bottom: 15px;
  }

  /* 小屏幕文字调整 */
  footer a.text-secondary,
  footer .contact-info,
  footer.text-nowrap {
    font-size: 0.8rem;
  }
  footer .contact-info .text-nowrap {
    font-size: 0.8rem;
  }
  /* 文本换行处理 */
  footer .text-nowrap {
    white-space: normal;
  }

  /* 版权信息文字调整 */
  footer .copyright-text {
    font-size: 0.8rem !important;
    margin-bottom: 0rem !important;
  }

  footer .footer-link {
    font-size: 0.8rem;
  }

  footer .police-text {
    font-size: 0.8rem;
  }
}
