.legacy-homepage .banner-wrapper-content {
  overflow: hidden;
}

.legacy-homepage .banner_container,
.legacy-homepage .banner_container .row,
.legacy-homepage .default-index-banner {
  width: 100%;
  max-width: none;
  margin-left: 0;
  margin-right: 0;
}

.legacy-homepage .default-index-banner .banner-pc,
.legacy-homepage .default-index-banner .banner-mobile {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
}

.legacy-homepage .history {
  min-height: 660px;
}

.legacy-homepage .timeline {
  overflow: hidden;
}

.legacy-homepage .events {
  display: block;
  width: 100%;
  padding-left: 0;
  padding-right: 0;
}

.legacy-homepage .events li {
  display: block;
  float: none;
  width: 100%;
  height: 384px;
  padding-left: 0;
  padding-right: 0;
}

.legacy-homepage .events li .event-card {
  display: block;
}

.legacy-homepage .dates-wrap {
  height: 92px;
  overflow: visible;
}

.legacy-homepage .dates {
  transition: margin-left 800ms ease;
}

.legacy-homepage .dates li {
  margin: 0;
}

@media only screen and (min-width: 1201px) {
  .legacy-homepage .default-index-banner {
    height: min(480px, 25vw);
    min-height: 430px;
  }
}

@media only screen and (max-width: 1200px) {
  .legacy-homepage .banner-wrapper-content {
    padding-top: 82px !important;
  }
}

@media only screen and (max-width: 767px) {
  .legacy-homepage .history {
    min-height: 0;
  }
}

.legacy-service-page {
  background: #f1f1f3;
}

.legacy-service-page #swiper-container {
  overflow: hidden;
}

.legacy-service-page .service-main-wrapper.swiper-wrapper:not([style]) {
  height: calc(100vh - 98px);
  overflow: hidden;
}

.legacy-service-page .service-main-wrapper.swiper-wrapper:not([style]) .service-slide {
  height: calc(100vh - 98px);
}

.legacy-service-page .service-main-wrapper.swiper-wrapper:not([style]) .service-slide:not(:first-child) {
  display: none;
}

/* Homepage Sticky Navigation removed - using JS toggle */

/* 我们的团队与硬核党建 轮播模块与宽度适配修复 */
@media (min-width: 1200px) {
  .legacy-homepage .container {
    width: 1180px !important;
    max-width: 1180px !important;
  }
}

@media (min-width: 992px) and (max-width: 1199px) {
  .legacy-homepage .container {
    width: 970px !important;
    max-width: 970px !important;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .legacy-homepage .container {
    width: 750px !important;
    max-width: 750px !important;
  }
}

.legacy-homepage .carousel-container {
  padding-left: 0 !important;
  padding-right: 0 !important;
}


.legacy-homepage .team-img img {
  object-fit: cover !important;
}

.legacy-homepage .team-carousel {
  position: relative !important;
}

.legacy-homepage .team-carousel .owl-dots {
  position: absolute !important;
  bottom: 19px !important;
  right: 76px !important;
  z-index: 10 !important;
  display: block !important;
}

.legacy-homepage .owl-carousel button.owl-dot {
  display: inline-block !important;
  border: none !important;
  padding: 0 !important;
  cursor: pointer !important;
  outline: none !important;
}

/* 硬核党建(Party Building) 模块与对齐修复 */
.legacy-homepage .dang-img img {
  object-fit: cover !important;
}

.legacy-homepage .dang-carousel {
  position: relative !important;
}

.legacy-homepage .dang-carousel .owl-dots {
  position: absolute !important;
  bottom: 19px !important;
  right: 76px !important;
  z-index: 10 !important;
  display: block !important;
}

/* 大事记模块(Timeline) 卡片右侧文字滚动与留白修复 */
.legacy-homepage .event-card .card-right p {
  max-height: 185px !important;
  overflow-y: auto !important;
  padding-top: 8px !important;
  padding-bottom: 20px !important;
  box-sizing: border-box !important;
  scrollbar-width: thin !important;
  scrollbar-color: rgba(0, 185, 132, 0.4) transparent !important;
}

/* 隐藏 Firefox/IE 默认滚动条，并为 Chrome/Safari/Edge 定制更细更美观的滚动条 */
.legacy-homepage .event-card .card-right p::-webkit-scrollbar {
  width: 4px !important;
  height: 4px !important;
}

.legacy-homepage .event-card .card-right p::-webkit-scrollbar-thumb {
  background: rgba(0, 185, 132, 0.4) !important;
  border-radius: 2px !important;
}

.legacy-homepage .event-card .card-right p::-webkit-scrollbar-thumb:hover {
  background: rgba(0, 185, 132, 0.6) !important;
}

.legacy-homepage .event-card .card-right p::-webkit-scrollbar-track {
  background: transparent !important;
}

@media only screen and (max-width: 767px) {
  /* 隐藏滚动条，且让容器可以完美横向滚动 */
  .legacy-homepage .submenu {
    overflow-x: auto !important;
    white-space: nowrap !important;
    display: flex !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
    scrollbar-width: none !important;
  }
  
  .legacy-homepage .submenu::-webkit-scrollbar {
    display: none !important;
  }

  .legacy-homepage .submenus-container {
    display: flex !important;
    flex-direction: row !important;
    width: auto !important;
    overflow: visible !important;
  }

  .legacy-homepage .submenu-tab {
    display: inline-block !important;
    margin-right: 24px !important;
    padding: 12px 0 !important;
    font-size: 15px !important;
    line-height: 1.5 !important;
    border-bottom: 2px solid transparent !important;
  }

  .legacy-homepage .submenus-container .active {
    color: #00b984 !important;
    border-bottom: 2px solid #00b984 !important;
  }
}

/* 新闻中心 (/news.html) 移动端适配样式 */
@media (max-width: 991px) {
  .news-list-wrapper {
    padding-bottom: 32px !important;
  }
  .news-title {
    margin: 24px 0 16px 0 !important;
    font-size: 24px !important;
    text-align: center !important;
  }
  .custom-news-card {
    width: 100% !important;
    max-width: 100% !important;
    margin-bottom: 20px !important;
    display: flex !important;
    flex-direction: column !important;
    border-radius: 8px !important;
  }
  .news-card-img {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 16 / 9 !important;
    display: block !important;
  }
  .custom-news-card .card-right {
    width: calc(100% - 32px) !important;
    margin: 16px !important;
    height: auto !important;
    display: block !important;
  }
  .custom-news-card .card-right .title {
    font-size: 16px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    color: #2f3343 !important;
    margin-bottom: 8px !important;
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    overflow: hidden !important;
    word-break: break-all !important;
  }
  .custom-news-card .card-right .content {
    font-size: 13px !important;
    line-height: 1.5 !important;
    color: #8f8f8f !important;
    margin-bottom: 12px !important;
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 3 !important;
    overflow: hidden !important;
    word-break: break-all !important;
  }
  .custom-news-card .card-right .auth-info {
    margin-top: 8px !important;
  }
  .custom-news-card .card-right .auth-info span {
    font-size: 12px !important;
    color: #afafaf !important;
  }
  .more-btn {
    margin: 24px auto !important;
  }
}

/* Tablet (768px - 991px) Header Layout Fix (resolves 13px squished header bug) */
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .header-wrapper .header-nav {
    padding: 15px 0 !important;
  }
  .header-wrapper .header-logo {
    width: 120px !important;
    margin: 0 !important;
    display: inline-block !important;
  }
  .header-wrapper .navbar-toggle {
    top: 50% !important;
    transform: translateY(-50%) !important;
    margin-top: 0 !important;
    right: 20px !important;
  }
  
  .legacy-mcn #nav-wrap,
  .legacy-inspection #nav-wrap,
  .legacy-sampling #nav-wrap,
  .legacy-laboratory #nav-wrap {
    top: 76px !important;
  }

  /* Fix qualification/honor content wrapping and spacing from images on iPad */
  .legacy-responsibility .honor-item-img,
  .responsibility-body .honor-item-img {
    display: block !important;
    margin-bottom: 0 !important;
  }
  .legacy-responsibility .honor-item-text,
  .responsibility-body .honor-item-text {
    display: block !important;
    width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-top: 16px !important;
  }

  /* Fix homepage timeline module squished bug on tablet viewports */
  .legacy-homepage .mobile-timeline-list,
  .mobile-timeline-list {
    padding: 40px 24px 0 24px !important;
  }
  .legacy-homepage .mobile-timeline-info,
  .mobile-timeline-info {
    margin-left: 40px !important;
    padding-left: 60px !important;
    padding-bottom: 50px !important;
  }
  .legacy-homepage .mobile-timeline-title,
  .mobile-timeline-title {
    font-size: 20px !important;
    line-height: 24px !important;
  }
  .legacy-homepage .mobile-timeline-paragraph,
  .mobile-timeline-paragraph {
    font-size: 15px !important;
    line-height: 24px !important;
    margin-top: 16px !important;
  }
  .legacy-homepage .mobile-timeline-img,
  .mobile-timeline-img {
    width: 80px !important;
    height: 80px !important;
    border-radius: 40px !important;
  }
  .legacy-homepage .more-timeline-btn,
  .more-timeline-btn {
    font-size: 16px !important;
    margin: 0 24px !important;
  }
  .legacy-homepage .more-timeline-btn .icon-more,
  .more-timeline-btn .icon-more {
    font-size: 14px !important;
  }
}

/* Ensure submenu tabs are in one line and scroll horizontally on iPad and tablets (max-width: 1024px) */
@media only screen and (max-width: 1024px) {
  .sampling-submenu {
    overflow-x: auto !important;
    overflow-y: hidden !important;
    white-space: nowrap !important;
    -ms-overflow-style: none !important;
    scrollbar-width: none !important;
  }
  .sampling-submenu::-webkit-scrollbar {
    display: none !important;
  }
  .sampling-submenu .submenus-container {
    display: flex !important;
    flex-wrap: nowrap !important;
    width: max-content !important;
  }
  .sampling-submenu .submenu-tab {
    flex-shrink: 0 !important;
    display: inline-block !important;
    float: none !important;
  }
}
