/* Mobile refine v2: mobile-only overrides, keeps desktop intact. */
@media (max-width: 768px) {
  html,
  body {
    max-width: 100%;
    overflow-x: hidden !important;
  }

  body {
    font-size: 16px;
    line-height: 1.6;
  }

  .box,
  .box.container,
  .box.container-fluid,
  .boxnotop {
    width: 100% !important;
    max-width: 100% !important;
    padding: 20px 14px !important;
  }

  .header > .container-fluid.sonone {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 66px;
  }

  .header .header_right {
    display: flex;
    align-items: center;
    gap: 10px;
    position: static !important;
  }

  .header .lang-switch,
  .header .lnag,
  .header .header_right_flex,
  .header .header_right .hidden-sm.hidden-xs {
    display: none !important;
  }

  .header .header_show {
    position: static !important;
    right: auto !important;
    top: auto !important;
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
    border-radius: 8px !important;
    background: rgba(0, 0, 0, 0.08) !important;
    font-size: 24px !important;
    z-index: 10001 !important;
  }

  #nav_top.navs {
    z-index: 99999 !important;
  }

  #collapase-nav {
    width: min(86vw, 360px) !important;
    max-width: min(86vw, 360px) !important;
  }

  body.mobile-menu-open {
    overflow: hidden !important;
  }

  .image3 {
    display: none !important;
  }

  .image4 {
    display: block !important;
    width: 100% !important;
    height: auto !important;
  }

  #index_about .list,
  #index_product .list_product,
  #product .list,
  #product .list_flex .list,
  #news .new-list,
  #videos,
  #guestbook .flex,
  .page-case #news.case-content .case-list,
  .footer .list {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  #index_product .list_product .item,
  #product .list .item,
  #news .list .item,
  #news .new-right-list > a,
  #videos > .item,
  .page-case #news.case-content .case-item {
    width: 100% !important;
    margin: 0 0 12px !important;
    float: none !important;
  }

  #index_product .list_product .item .product-name,
  #index_product .list_product .item .product_title {
    display: block !important;
    font-size: 16px !important;
    line-height: 1.45 !important;
    white-space: normal !important;
    word-break: break-word !important;
    padding: 10px 8px !important;
    text-align: center !important;
  }

  #news .new-right-list > a {
    display: block !important;
    padding: 12px !important;
  }

  #news .new-right-list > a .image,
  #news .new-right-list > a dd {
    width: 100% !important;
  }

  #news .new-right-list > a dd h4 {
    height: auto !important;
    font-size: 18px !important;
    line-height: 1.4 !important;
    margin: 10px 0 6px !important;
  }

  #news .new-right-list > a dd .description {
    margin: 0 0 10px !important;
  }

  #news .new-right-list > a dd .more {
    float: none !important;
    min-width: 120px !important;
    width: auto !important;
    height: 44px !important;
    line-height: 44px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .case_titles .p1 {
    font-size: 30px !important;
  }

  .case_titles .p2 {
    font-size: 20px !important;
  }

  #product > div[style*="display: flex"] {
    display: block !important;
    gap: 0 !important;
  }

  #product .product-fl2,
  #product .list_flex {
    width: 100% !important;
    max-width: 100% !important;
  }

  #product .product-fl2 {
    margin-bottom: 12px !important;
  }

  #guestbook .guestbook_content {
    display: block !important;
    padding: 14px !important;
  }

  #guestbook .title {
    padding: 0 !important;
  }

  #guestbook .title .p1 {
    font-size: 28px !important;
    line-height: 1.25 !important;
  }

  #guestbook .title .p2 {
    font-size: 16px !important;
    line-height: 1.5 !important;
  }

  #guestbook .lianxi {
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    margin: 16px 0 0 !important;
  }

  #guestbook .lianxi li {
    width: 100% !important;
    margin: 0 !important;
    padding: 10px 12px !important;
    border: 1px solid #e4e9f3 !important;
    border-radius: 10px !important;
    background: #fff !important;
  }

  #guestbook .lianxi li i {
    font-size: 16px !important;
    line-height: 1.5 !important;
    word-break: break-word !important;
  }

  #guestbook .map {
    width: 100% !important;
    min-height: 260px !important;
  }

  #guestbook form {
    width: 100% !important;
    padding: 14px !important;
  }

  #guestbook form input[type="text"],
  #guestbook form textarea,
  #guestbook form input[type="submit"] {
    width: 100% !important;
    min-height: 44px !important;
    font-size: 16px !important;
  }

  .about_introduce,
  .about_introduce .content,
  .about_introduce .supplier,
  .about_introduce .supplier .supplier_content {
    height: auto !important;
    min-height: 0 !important;
    position: relative !important;
    overflow: visible !important;
  }

  .about_introduce .supplier p,
  .about_introduce .content p {
    white-space: normal !important;
    word-break: break-word !important;
  }

  .footer .list > .item:nth-child(2) {
    display: none !important;
  }

  .footer .list > .item:last-child {
    display: block !important;
  }

  .footer .item .flex_al {
    display: flex !important;
    align-items: flex-start !important;
    gap: 8px !important;
  }

  .footer .item .menu-children-list span {
    white-space: normal !important;
    word-break: break-word !important;
    font-size: 14px !important;
  }

  .footernav,
  .foot-nav,
  #footernav,
  .ey_foot_nav,
  [class*="footernav"] {
    display: none !important;
  }

  button,
  .btn,
  a.more,
  #back-to-top,
  input[type="submit"],
  .header_show {
    min-width: 44px !important;
    min-height: 44px !important;
  }

  input,
  textarea,
  select,
  button {
    font-size: 16px !important;
  }

  img,
  video,
  iframe {
    max-width: 100% !important;
    height: auto !important;
  }

  .mobile-table-scroll {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .mobile-table-scroll > table {
    min-width: 640px;
  }

  table.mobile-card-table {
    min-width: 0 !important;
    width: 100% !important;
    border-collapse: collapse !important;
  }

  table.mobile-card-table thead {
    display: none !important;
  }

  table.mobile-card-table,
  table.mobile-card-table tbody,
  table.mobile-card-table tr,
  table.mobile-card-table td {
    display: block !important;
    width: 100% !important;
  }

  table.mobile-card-table tr {
    margin-bottom: 12px;
    border: 1px solid #e2e7f0;
    border-radius: 10px;
    background: #fff;
    overflow: hidden;
  }

  table.mobile-card-table td {
    border: none !important;
    border-bottom: 1px solid #edf1f7 !important;
    padding: 10px 12px 10px 44% !important;
    position: relative;
    min-height: 40px;
    font-size: 15px;
    line-height: 1.45;
    word-break: break-word;
  }

  table.mobile-card-table td:last-child {
    border-bottom: none !important;
  }

  table.mobile-card-table td::before {
    content: attr(data-label);
    position: absolute;
    left: 12px;
    top: 10px;
    width: calc(44% - 20px);
    font-weight: 600;
    color: #3d485c;
    white-space: normal;
  }

  .modal-dialog {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
  }

  .modal-content {
    min-height: 100dvh !important;
    border-radius: 0 !important;
    overflow: auto !important;
  }

  .layui-layer {
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100dvh !important;
  }

  .layui-layer-content {
    height: calc(100dvh - 54px) !important;
    overflow: auto !important;
  }

  .lg-outer,
  .lg {
    width: 100% !important;
    height: 100dvh !important;
  }
}

@media (max-width: 576px) {
  .case_titles .p1 {
    font-size: 26px !important;
  }

  .case_titles .p2 {
    font-size: 18px !important;
  }

  #news .new-right-list > a dd h4 {
    font-size: 17px !important;
  }

  #guestbook .title .p1 {
    font-size: 24px !important;
  }
}

/* Mobile footer contact block: global all-page layout fix */
@media (max-width: 768px) {
  .footer .list > .item:last-child {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    align-items: stretch !important;
  }

  .footer .list > .item:last-child > .flex_al {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 12px !important;
    width: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 14px 12px !important;
    border-radius: 10px !important;
    background: rgba(255, 255, 255, 0.08) !important;
  }

  .footer .list > .item:last-child > .flex_al > img {
    width: 24px !important;
    height: 24px !important;
    min-width: 24px !important;
    min-height: 24px !important;
    max-width: 24px !important;
    margin: 2px 0 0 0 !important;
    object-fit: contain !important;
    flex: 0 0 24px !important;
  }

  .footer .list > .item:last-child > .flex_al > .menu-children-list {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    flex: 1 1 auto !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
  }

  .footer .list > .item:last-child > .flex_al > .menu-children-list > div {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 6px !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    text-align: left !important;
    color: #c5cad3 !important;
  }

  .footer .list > .item:last-child .mintitle {
    margin: 0 !important;
    font-size: 15px !important;
    line-height: 1.35 !important;
    color: #d6dce6 !important;
    width: auto !important;
  }

  .footer .list > .item:last-child span {
    display: block !important;
    margin: 0 !important;
    font-size: 18px !important;
    line-height: 1.45 !important;
    font-weight: 600 !important;
    color: #fff !important;
    text-align: left !important;
    word-break: break-word !important;
    overflow-wrap: anywhere !important;
    white-space: normal !important;
    width: 100% !important;
  }

  .footer .footIcon .bottom_title {
    text-align: center !important;
    line-height: 1.7 !important;
  }
}

@media (max-width: 576px) {
  .footer .list > .item:last-child > .flex_al {
    padding: 12px 10px !important;
    gap: 10px !important;
  }

  .footer .list > .item:last-child .mintitle {
    font-size: 14px !important;
  }

  .footer .list > .item:last-child span {
    font-size: 16px !important;
    line-height: 1.4 !important;
  }
}

/* Mobile logo sizing guard: header / sidebar / footer */
@media (max-width: 768px) {
  body .header .logo {
    width: 34vw !important;
    max-width: 136px !important;
    min-width: 96px !important;
  }

  body #nav_top #collapase-nav img.mobile-img {
    width: 90px !important;
    max-width: 90px !important;
    min-width: 90px !important;
    height: auto !important;
    margin: 12px auto 8px !important;
    padding: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    object-fit: contain !important;
  }

  body .footer .footIcon img.logo {
    width: 96px !important;
    max-width: 96px !important;
    min-width: 96px !important;
    height: auto !important;
    margin: 0 auto 12px !important;
    object-fit: contain !important;
  }
}

@media (max-width: 576px) {
  body .header .logo {
    width: 32vw !important;
    max-width: 122px !important;
    min-width: 90px !important;
  }

  body #nav_top #collapase-nav img.mobile-img {
    width: 82px !important;
    max-width: 82px !important;
    min-width: 82px !important;
  }

  body .footer .footIcon img.logo {
    width: 86px !important;
    max-width: 86px !important;
    min-width: 86px !important;
  }
}

/* Six primary pages: unified mobile layout system (desktop untouched) */
@media (max-width: 768px) {
  /* Shared inner-page shell */
  .section.one-section {
    padding: 12px 10px 0 !important;
    margin: 0 !important;
  }

  .section.one-section .container-fluid {
    padding: 0 !important;
  }

  .section.one-section .title {
    margin: 0 !important;
    padding: 8px 10px !important;
    border-radius: 10px !important;
    background: rgba(255, 255, 255, 0.78) !important;
  }

  .section.one-section .title address {
    display: block !important;
    margin: 0 !important;
    font-size: 12px !important;
    line-height: 1.6 !important;
    color: #5f6c82 !important;
    white-space: normal !important;
    word-break: break-word !important;
  }

  .case_titles {
    text-align: center !important;
    padding: 10px 12px 14px !important;
    margin: 0 !important;
  }

  .case_titles .p1 {
    margin: 0 0 6px !important;
    font-size: 26px !important;
    line-height: 1.1 !important;
    letter-spacing: 0.04em !important;
  }

  .case_titles .p2 {
    margin: 0 !important;
    font-size: 15px !important;
    line-height: 1.45 !important;
    color: #4f5b73 !important;
  }

  /* Home page modules */
  #index_product,
  #index_elegant,
  #index_introduction,
  #index_type,
  #index_honor,
  #index_news {
    margin: 0 auto 18px !important;
    border-radius: 12px !important;
  }

  #index_product .box.container-fluid,
  #index_elegant .box.container-fluid,
  #index_introduction .box.container-fluid,
  #index_type .box.container-fluid,
  #index_honor .box.container-fluid,
  #index_news .box.container-fluid {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* About us page */
  .about_introduce {
    padding: 24px 12px !important;
  }

  .about_introduce .box.container-fluid {
    padding: 0 !important;
  }

  .about_introduce .box .flex {
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
  }

  .about_introduce .left,
  .about_introduce .right {
    width: 100% !important;
    max-width: 100% !important;
  }

  .about_introduce .left .title {
    margin: 0 0 6px !important;
    font-size: 24px !important;
    line-height: 1.2 !important;
    word-break: break-word !important;
    color: #25324a !important;
  }

  .about_introduce .left .home-title {
    margin: 0 0 10px !important;
    padding: 0 !important;
    text-align: left !important;
  }

  .about_introduce .left .home-title p {
    margin: 0 !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
    color: #7a8599 !important;
  }

  .about_introduce .left .content {
    font-size: 14px !important;
    line-height: 1.75 !important;
    color: #333e52 !important;
    word-break: break-word !important;
    overflow-wrap: anywhere !important;
  }

  .about_introduce .right img,
  .about_introduce img.about_imgone,
  .about_introduce img.about_imgtwo,
  .about_introduce img.about_imgthere {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    border-radius: 12px !important;
    object-fit: cover !important;
  }

  #about_advantage {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    padding: 0 12px 18px !important;
  }

  #about_advantage .son {
    display: block !important;
    margin: 0 !important;
    padding: 12px !important;
    border-radius: 12px !important;
    border: 1px solid #e6ebf3 !important;
    background: #fff !important;
  }

  #about_advantage .son > div:first-child {
    margin: 0 0 10px !important;
    font-size: 14px !important;
    line-height: 1.7 !important;
    color: #38465f !important;
  }

  #about_advantage .son img {
    display: block !important;
    width: 100% !important;
    border-radius: 8px !important;
  }

  .about_introduce.supplier_bj {
    padding: 24px 12px !important;
    background-size: cover !important;
    background-position: center !important;
  }

  .about_introduce .supplier_content {
    padding: 14px !important;
    border-radius: 12px !important;
    background: rgba(17, 25, 40, 0.56) !important;
    color: #fff !important;
  }

  /* Product series page */
  #product {
    padding: 22px 12px !important;
  }

  #product .product_search {
    margin: 0 0 12px !important;
    padding: 12px !important;
    border-radius: 12px !important;
    background: #fff !important;
    border: 1px solid #e6ebf2 !important;
  }

  #product .product_search .toptext {
    margin: 0 0 8px !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
    color: #5a657a !important;
  }

  #product .product_search .search_input .search_main form {
    display: flex !important;
    gap: 8px !important;
  }

  #product .product_search .search_input .form-control {
    flex: 1 1 auto !important;
    min-height: 42px !important;
    border-radius: 10px !important;
    border: 1px solid #d8e0ed !important;
    padding: 0 12px !important;
  }

  #product .product_search .search_btn {
    width: 42px !important;
    min-width: 42px !important;
    border-radius: 10px !important;
  }

  #product > div[style*="display: flex"] {
    display: block !important;
  }

  #product .product-fl2 {
    width: 100% !important;
    margin: 0 0 12px !important;
    padding: 0 !important;
  }

  #product .product-son2 {
    padding: 0 !important;
    margin: 0 !important;
  }

  #product .series-list {
    margin: 0 0 10px !important;
    border-radius: 10px !important;
    border: 1px solid #e6ebf2 !important;
    background: #fff !important;
    overflow: hidden !important;
  }

  #product .product-p1 {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    min-height: 44px !important;
    padding: 12px !important;
    background: #f7f9fd !important;
  }

  #product .product-p1 span {
    font-size: 14px !important;
    line-height: 1.4 !important;
    color: #33415b !important;
  }

  #product .product-p1 .product-tb {
    display: none !important;
  }

  #product .product-p2 {
    display: block !important;
    padding: 8px !important;
    background: #fff !important;
  }

  #product .product-p2 a {
    display: block !important;
    margin: 0 0 6px !important;
    padding: 10px 12px !important;
    border-radius: 8px !important;
    background: #f6f8fc !important;
    color: #3f4a5f !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
  }

  #product .product-p2 a.active {
    background: #2f3b5f !important;
    color: #fff !important;
  }

  #product .list_flex {
    width: 100% !important;
    margin: 0 !important;
  }

  #product .list_flex .list {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  #product .list_flex .list .item {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    background: #fff !important;
    border: 1px solid #e6ebf2 !important;
    box-shadow: 0 3px 10px rgba(18, 29, 54, 0.06) !important;
  }

  #product .list_flex .list .item .image.slide60 {
    padding-bottom: 72% !important;
  }

  #product .list_flex .list .item .product_title {
    min-height: 56px !important;
    padding: 10px 10px 12px !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
    color: #2d384d !important;
    word-break: break-word !important;
  }

  #product .p12-pagination-1 {
    margin-top: 12px !important;
    padding: 6px 0 !important;
  }

  /* Project Cases / News list pages */
  .case_titles + .box.container-fluid#news,
  .case_titles + .box#news,
  .case_titles + #news {
    padding: 0 12px 18px !important;
  }

  .case_titles + .box.container-fluid#news .list,
  .case_titles + .box#news .list,
  .case_titles + #news .list {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    margin: 0 !important;
  }

  .case_titles + .box.container-fluid#news .list .right,
  .case_titles + .box#news .list .right,
  .case_titles + #news .list .right {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    width: 100% !important;
  }

  .case_titles + .box.container-fluid#news .list .item,
  .case_titles + .box#news .list .item,
  .case_titles + #news .list .item {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    border: 1px solid #e6ebf2 !important;
    background: #fff !important;
    text-decoration: none !important;
    color: #2f3b52 !important;
    line-height: 1.5 !important;
  }

  .case_titles + .box.container-fluid#news .list .item .image,
  .case_titles + .box#news .list .item .image,
  .case_titles + #news .list .item .image {
    width: 100% !important;
    margin: 0 0 10px !important;
    position: relative !important;
  }

  .case_titles + .box.container-fluid#news .list .item .image .slide60,
  .case_titles + .box#news .list .item .image .slide60,
  .case_titles + #news .list .item .image .slide60 {
    padding-bottom: 62% !important;
  }

  .case_titles + .box.container-fluid#news .list .item .image .iconfont,
  .case_titles + .box#news .list .item .image .iconfont,
  .case_titles + #news .list .item .image .iconfont {
    display: none !important;
  }

  .case_titles + .box.container-fluid#news .list .item .image img,
  .case_titles + .box#news .list .item .image img,
  .case_titles + #news .list .item .image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }

  .case_titles + .box.container-fluid#news .list .item .ccc,
  .case_titles + .box#news .list .item .ccc,
  .case_titles + #news .list .item .ccc {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 12px 12px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
  }

  .case_titles + .box.container-fluid#news .list .item .ccc .title,
  .case_titles + .box#news .list .item .ccc .title,
  .case_titles + #news .list .item .ccc .title {
    margin: 0 !important;
    font-size: 16px !important;
    line-height: 1.45 !important;
    color: #1f2c45 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
  }

  .case_titles + .box.container-fluid#news .list .item .ccc .date,
  .case_titles + .box#news .list .item .ccc .date,
  .case_titles + #news .list .item .ccc .date {
    margin: 0 !important;
    font-size: 12px !important;
    line-height: 1.4 !important;
    color: #8b96ac !important;
  }

  .case_titles + .box.container-fluid#news .list .item .ccc .content,
  .case_titles + .box#news .list .item .ccc .content,
  .case_titles + #news .list .item .ccc .content {
    margin: 0 !important;
    font-size: 13px !important;
    line-height: 1.6 !important;
    color: #4f5d76 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 3 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
  }

  .case_titles + .box.container-fluid#news .list > .item,
  .case_titles + .box#news .list > .item,
  .case_titles + #news .list > .item {
    font-size: 14px !important;
    line-height: 1.55 !important;
    padding-bottom: 12px !important;
  }

  .case_titles + .box.container-fluid#news .list > .item .image,
  .case_titles + .box#news .list > .item .image,
  .case_titles + #news .list > .item .image {
    margin-bottom: 10px !important;
  }

  .case_titles + .box.container-fluid#news .p12-pagination-1,
  .case_titles + .box#news .p12-pagination-1,
  .case_titles + #news .p12-pagination-1 {
    margin-top: 12px !important;
    padding: 4px 0 !important;
  }

  /* Contact page (guestbook/contact form) */
  #guestbook {
    padding: 22px 12px !important;
  }

  #guestbook .guestbook_content {
    margin: 0 0 12px !important;
    padding: 14px !important;
    border-radius: 14px !important;
    border: 1px solid #e6ebf2 !important;
    background: #fff !important;
  }

  #guestbook .title {
    text-align: center !important;
  }

  #guestbook .title .p1 {
    margin: 0 !important;
    font-size: 24px !important;
    line-height: 1.25 !important;
    color: #22304a !important;
  }

  #guestbook .title .p2 {
    margin: 6px 0 0 !important;
    font-size: 13px !important;
    line-height: 1.6 !important;
    color: #72809a !important;
  }

  #guestbook .title img {
    display: block !important;
    width: 110px !important;
    max-width: 45% !important;
    margin: 12px auto 0 !important;
    height: auto !important;
  }

  #guestbook .lianxi {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    margin-top: 14px !important;
  }

  #guestbook .lianxi li {
    display: flex !important;
    align-items: flex-start !important;
    gap: 10px !important;
    margin: 0 !important;
    padding: 12px !important;
    border-radius: 10px !important;
    border: 1px solid #e7ecf5 !important;
    background: #f7f9fc !important;
  }

  #guestbook .lianxi li img {
    width: 22px !important;
    height: 22px !important;
    min-width: 22px !important;
    min-height: 22px !important;
    margin-top: 2px !important;
  }

  #guestbook .lianxi li i {
    font-size: 14px !important;
    line-height: 1.6 !important;
    color: #33415b !important;
    word-break: break-word !important;
  }

  #guestbook .flex {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
  }

  #guestbook .map {
    width: 100% !important;
    min-height: 260px !important;
    border-radius: 12px !important;
    overflow: hidden !important;
  }

  #guestbook form {
    width: 100% !important;
    margin: 0 !important;
    padding: 14px !important;
    border-radius: 12px !important;
    border: 1px solid #e6ebf2 !important;
    background: #fff !important;
  }

  #guestbook form .home-title {
    margin-bottom: 10px !important;
    padding: 0 !important;
    text-align: left !important;
  }

  #guestbook form .home-title p {
    margin: 0 !important;
    font-size: 20px !important;
    line-height: 1.3 !important;
    color: #22304a !important;
  }

  #guestbook form input[type="text"],
  #guestbook form textarea {
    width: 100% !important;
    min-height: 44px !important;
    margin-bottom: 10px !important;
    padding: 12px !important;
    border-radius: 10px !important;
    border: 1px solid #dbe3f0 !important;
    background: #f8fafc !important;
    font-size: 14px !important;
    color: #25324a !important;
  }

  #guestbook form textarea {
    min-height: 120px !important;
    resize: vertical !important;
  }

  #guestbook form input[type="submit"] {
    width: 100% !important;
    min-height: 46px !important;
    margin: 2px 0 0 !important;
    border: none !important;
    border-radius: 10px !important;
    background: #2f3b5f !important;
    color: #fff !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    letter-spacing: 0.01em !important;
  }

  /* Single contact page fallback */
  #about {
    padding: 22px 12px !important;
  }

  #about .box {
    padding: 0 !important;
  }

  #about .home-title {
    margin-bottom: 12px !important;
    text-align: center !important;
  }

  #about .home-title b {
    font-size: 24px !important;
    line-height: 1.25 !important;
    color: #22304a !important;
  }

  #about .home-title p {
    margin-top: 6px !important;
    font-size: 13px !important;
    color: #72809a !important;
  }

  #about .about-image {
    display: block !important;
    width: 100% !important;
    border-radius: 12px !important;
    margin-bottom: 12px !important;
  }

  #about .list {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  #about .list li {
    margin: 0 !important;
    padding: 12px !important;
    border-radius: 10px !important;
    border: 1px solid #e6ebf2 !important;
    background: #fff !important;
    line-height: 1.6 !important;
    color: #3b4760 !important;
    font-size: 14px !important;
  }
}

@media (max-width: 576px) {
  .case_titles .p1 {
    font-size: 22px !important;
  }

  .case_titles .p2 {
    font-size: 14px !important;
  }

  #product .list_flex .list {
    grid-template-columns: 1fr !important;
  }

  .about_introduce .left .title {
    font-size: 21px !important;
  }

  #guestbook .title .p1 {
    font-size: 21px !important;
  }
}
/* Mobile redesign v3: six main pages + detail pages (desktop untouched) */
@media (max-width: 768px) {
  :root {
    --m-bg: #eef3fa;
    --m-card: #ffffff;
    --m-line: #dfe6f2;
    --m-title: #1f2f4d;
    --m-text: #4d5d78;
    --m-muted: #7e8ca5;
    --m-accent: #22458f;
    --m-accent-2: #2f318b;
    --m-radius: 14px;
  }

  body {
    background: linear-gradient(180deg, #eef3fa 0%, #f7f9fd 34%, #eef3fa 100%) !important;
    color: var(--m-text) !important;
  }

  body .box,
  body .box.container-fluid,
  body .boxnotop {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  /* Keep mobile logo sizes deterministic */
  body .header .logo {
    width: 31vw !important;
    max-width: 116px !important;
    min-width: 84px !important;
    margin: 0 !important;
  }

  body .header .logo img {
    width: 100% !important;
    max-width: 116px !important;
    height: auto !important;
    object-fit: contain !important;
  }

  body #nav_top #collapase-nav > img.mobile-img {
    width: 80px !important;
    max-width: 80px !important;
    min-width: 80px !important;
    height: auto !important;
    margin: 14px auto 10px !important;
    padding: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    object-fit: contain !important;
  }

  body .footer .footIcon img.logo {
    width: 80px !important;
    max-width: 80px !important;
    min-width: 80px !important;
    height: auto !important;
    margin: 0 auto 10px !important;
    object-fit: contain !important;
  }

  body .header .logo.img-error::after,
  body #nav_top #collapase-nav.img-error::after,
  body .footer .footIcon.img-error::after {
    content: "LOGO";
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 80px;
    height: 34px;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.08em;
    color: #97a4ba;
    border: 1px dashed #ced7e6;
    border-radius: 8px;
  }

  /* Sidebar: keep it above page and readable */
  body #nav_top.navs {
    position: fixed !important;
    inset: 0 !important;
    z-index: 2147483000 !important;
    display: none !important;
  }

  body #nav_top.navs[data-mobile-open="1"] {
    display: block !important;
  }

  body #nav_top.navs .nav-overlay {
    background: rgba(7, 12, 22, 0.62) !important;
  }

  body #nav_top #collapase-nav {
    width: min(84vw, 334px) !important;
    max-width: min(84vw, 334px) !important;
    height: 100dvh !important;
    background: linear-gradient(180deg, #f9fbff 0%, #f0f4fb 100%) !important;
    box-shadow: 10px 0 30px rgba(11, 24, 47, 0.22) !important;
    transform: translateX(-100%) !important;
  }

  body #nav_top.navs[data-mobile-open="1"] #collapase-nav {
    transform: translateX(0) !important;
  }

  body #nav_top #collapase-nav > li > a {
    min-height: 48px !important;
    padding: 14px 16px !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    color: #2a3954 !important;
  }

  body #nav_top #collapase-nav > li.active > a {
    color: #fff !important;
    background: linear-gradient(135deg, var(--m-accent) 0%, var(--m-accent-2) 100%) !important;
  }

  body #nav_top #collapase-nav > li > span.iconfont {
    display: none !important;
  }

  html body #nav_top #collapase-nav > li > ul.am-collapse {
    display: none !important;
    border-top: 1px solid #e6edf9 !important;
    background: #f6f9ff !important;
  }

  html body #nav_top #collapase-nav > li.mobile-open > ul.am-collapse {
    display: block !important;
  }

  body #nav_top #collapase-nav > li.mobile-open > a {
    color: #fff !important;
    background: linear-gradient(135deg, var(--m-accent) 0%, var(--m-accent-2) 100%) !important;
  }

  body #nav_top #collapase-nav > li > ul.am-collapse > li > a {
    padding: 11px 16px 11px 34px !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    color: #64748e !important;
    line-height: 1.45 !important;
    border-bottom: 1px dashed #e7edf7 !important;
  }

  /* Banner + top path block */
  body .two-banner {
    max-height: none !important;
    border-radius: 0 0 14px 14px !important;
    overflow: hidden !important;
  }

  body .two-banner img {
    animation: none !important;
  }

  body .two-banner .pc {
    display: none !important;
  }

  body .two-banner .mobile {
    display: block !important;
  }

  body .section.one-section {
    margin: 0 !important;
    padding: 10px 12px 0 !important;
  }

  body .section.one-section .title {
    margin: 0 !important;
    padding: 8px 10px !important;
    border: 1px solid var(--m-line) !important;
    border-radius: 10px !important;
    background: rgba(255, 255, 255, 0.86) !important;
  }

  body .section.one-section .title address {
    margin: 0 !important;
    font-size: 12px !important;
    line-height: 1.55 !important;
    color: #667792 !important;
    white-space: normal !important;
    word-break: break-word !important;
  }

  body .section.one-section .title h2 {
    margin: 4px 0 0 !important;
    font-size: 19px !important;
    line-height: 1.3 !important;
    color: var(--m-title) !important;
  }

  body .section .second-nav,
  body .section .third-nav {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    padding: 10px 0 0 !important;
    margin: 0 !important;
  }

  body .section .second-nav::after {
    display: none !important;
  }

  body .section .second-nav a,
  body .section .third-nav a {
    width: auto !important;
    min-width: calc(50% - 4px) !important;
    margin: 0 !important;
    padding: 8px 10px !important;
    border-radius: 9px !important;
    border: 1px solid var(--m-line) !important;
    background: #fff !important;
    color: #47556f !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    text-align: center !important;
  }

  body .section .second-nav a.active,
  body .section .third-nav a.active {
    color: #fff !important;
    border-color: var(--m-accent) !important;
    background: linear-gradient(135deg, var(--m-accent) 0%, var(--m-accent-2) 100%) !important;
  }

  body .case_titles {
    padding: 10px 12px 14px !important;
  }

  body .case_titles .p1 {
    margin: 0 0 5px !important;
    font-size: 25px !important;
    line-height: 1.1 !important;
    letter-spacing: 0.03em !important;
  }

  body .case_titles .p2 {
    margin: 0 !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
    color: #5b6b84 !important;
  }

  /* Home page redesign */
  body #index_product,
  body #index_elegant,
  body #index_introduction,
  body #index_type,
  body #index_honor,
  body #index_news {
    margin: 0 0 14px !important;
    padding: 18px 12px !important;
    border: 1px solid var(--m-line) !important;
    border-radius: var(--m-radius) !important;
    box-shadow: 0 8px 24px rgba(18, 35, 67, 0.08) !important;
    overflow: hidden !important;
  }

  body #index_product .home-title,
  body #index_elegant .home-title,
  body #index_introduction .home-title,
  body #index_honor .home-title,
  body #index_news .home-title {
    padding: 0 0 12px !important;
    margin: 0 !important;
    text-align: left !important;
  }

  body #index_product .home-title b,
  body #index_elegant .home-title b,
  body #index_introduction .home-title b,
  body #index_honor .home-title b,
  body #index_news .home-title b {
    justify-content: flex-start !important;
    padding: 0 !important;
    font-size: 23px !important;
    line-height: 1.2 !important;
    color: var(--m-title) !important;
  }

  body #index_honor .home-title b {
    color: #fff !important;
  }

  body #index_product .home-title .futitle,
  body #index_elegant .home-title .futitle,
  body #index_introduction .home-title .futitle,
  body #index_honor .home-title .futitle,
  body #index_news .home-title .futitle {
    margin: 0 0 4px !important;
    font-size: 12px !important;
    line-height: 1.4 !important;
    color: #7788a4 !important;
  }

  body #index_product .list.list_product {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body #index_product .list.list_product .item {
    width: 100% !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    line-height: 1.4 !important;
    font-size: 13px !important;
    color: #2c3b56 !important;
    border-radius: 11px !important;
    border: 1px solid #e5ecf7 !important;
    overflow: hidden !important;
    background: #fff !important;
    text-decoration: none !important;
    text-align: center !important;
    box-shadow: 0 3px 10px rgba(19, 36, 66, 0.06) !important;
  }

  body #index_product .list.list_product .item .image {
    position: relative !important;
    width: 100% !important;
    padding-bottom: 84% !important;
  }

  body #index_product .list.list_product .item .image .mask_layer {
    opacity: 0.24 !important;
    border-radius: 0 !important;
  }

  body #index_product .list.list_product .item .image .cate_icon .inner_layer .cate_typename {
    font-size: 12px !important;
    line-height: 1.35 !important;
  }

  body #index_product .list.list_product .item .image img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }

  body #index_product .list.list_product .item {
    padding-bottom: 10px !important;
  }

  body #index_product .list.list_product .item:last-child {
    white-space: normal !important;
    text-overflow: clip !important;
    overflow: visible !important;
  }

  body #index_product .list.list_product .item > .image + * {
    padding: 8px 10px 0 !important;
  }

  body #index_elegant .home-title.case_flex {
    display: flex !important;
    align-items: flex-end !important;
    justify-content: space-between !important;
    gap: 10px !important;
  }

  body #index_elegant .home-title.case_flex > span {
    display: block !important;
    width: auto !important;
    font-size: 20px !important;
    line-height: 1.32 !important;
    color: var(--m-title) !important;
  }

  body #index_elegant .home-title.case_flex > a {
    display: none !important;
  }

  body #index_elegant .home-title.case_flex > a img {
    width: 18px !important;
    height: 18px !important;
    object-fit: contain !important;
  }

  body #index_elegant .list_width {
    margin: 0 !important;
    padding-top: 2px !important;
  }

  body #index_elegant .swiper-slide .slide80,
  body #index_honor .swiper-slide .slide80 {
    border-radius: 11px !important;
    overflow: hidden !important;
    background: #f2f5fa !important;
  }

  body #index_elegant .swiper-slide .slide80 {
    padding-bottom: 72% !important;
    position: relative !important;
  }

  body #index_honor .swiper-slide .slide80 {
    padding-bottom: 68% !important;
    position: relative !important;
  }

  body #index_elegant .swiper-slide .slide80 .flex,
  body #index_honor .swiper-slide .slide80 .flex {
    position: absolute !important;
    inset: 0 !important;
  }

  body #index_elegant .swiper-slide .slide80 img,
  body #index_honor .swiper-slide .slide80 img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }

  body #index_elegant .elegant-pagination {
    position: static !important;
    margin-top: 10px !important;
    text-align: center !important;
    line-height: 1 !important;
  }

  body #index_elegant .elegant-pagination .swiper-pagination-bullet {
    width: 8px !important;
    height: 8px !important;
    margin: 0 4px !important;
    border-radius: 8px !important;
    background: #c8d0df !important;
    opacity: 1 !important;
  }

  body #index_elegant .elegant-pagination .swiper-pagination-bullet::after {
    display: none !important;
  }

  body #index_elegant .elegant-pagination .swiper-pagination-bullet-active {
    background: #2f3b5f !important;
  }

  /* Keep #index_honor visible and stable on mobile */
  body #index_honor {
    background-image: none !important;
    background-color: #f3f6fb !important;
  }

  body #index_honor .home-title .futitle,
  body #index_honor .home-title b {
    color: #2d4166 !important;
    opacity: 1 !important;
    filter: none !important;
    text-shadow: none !important;
  }

  body #index_honor .honor-container {
    width: 100% !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  body #index_honor .honor-container .swiper-wrapper {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body #index_honor .honor-container .swiper-slide {
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    display: block !important;
  }

  body #index_honor .honor-container .swiper-slide,
  body #index_honor .honor-container .swiper-slide div {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  body #index_honor .honor-container .swiper-slide .slide80 {
    position: relative !important;
    height: 0 !important;
    min-height: 0 !important;
    padding-bottom: 72% !important;
    border-radius: 10px !important;
    border: 1px solid #dde6f5 !important;
    background: #fff !important;
    overflow: hidden !important;
  }

  body #index_honor .honor-container .swiper-slide .flex {
    position: absolute !important;
    inset: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body #index_honor .honor-container .swiper-slide img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    background: #fff !important;
  }

  body #index_honor .honor-container.mobile-no-slides {
    display: none !important;
  }

  body #index_honor .honor-container:not(.swiper-container-initialized) .swiper-slide {
    width: 82% !important;
    flex: 0 0 82% !important;
  }

  /* Keep #index_news visible and readable on mobile */
  body #index_news .list {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body #index_news .list .right.news-container {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: hidden !important;
  }

  body #index_news .list .right.news-container .swiper-wrapper {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body #index_news .list .right.news-container .swiper-slide.item {
    height: auto !important;
    min-height: 0 !important;
    flex-shrink: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid #dfe7f5 !important;
    border-radius: 10px !important;
    background: #fff !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
    box-shadow: 0 3px 12px rgba(17, 34, 61, 0.08) !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  body #index_news .list .right.news-container .swiper-slide.item .image {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body #index_news .list .right.news-container .swiper-slide.item .image .slide60 {
    position: relative !important;
    width: 100% !important;
    height: 0 !important;
    padding-bottom: 62% !important;
    background: #eef3fb !important;
    overflow: hidden !important;
  }

  body #index_news .list .right.news-container .swiper-slide.item .image .slide60 img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
  }

  body #index_news .list .right.news-container .swiper-slide.item .ccc {
    width: 100% !important;
    margin: 0 !important;
    padding: 10px 10px 12px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 7px !important;
  }

  body #index_news .list .right.news-container .swiper-slide.item .ccc .date {
    margin: 0 !important;
    font-size: 12px !important;
    line-height: 1.4 !important;
    color: #8a97ad !important;
  }

  body #index_news .list .right.news-container .swiper-slide.item .ccc .title {
    margin: 0 !important;
    padding: 0 !important;
    font-size: 16px !important;
    line-height: 1.4 !important;
    color: #233a63 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  body #index_news .list .right.news-container .swiper-slide.item .ccc .content {
    margin: 0 !important;
    padding: 0 !important;
    font-size: 12px !important;
    line-height: 1.65 !important;
    color: #5c6d88 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  body #index_news .news-pagination {
    position: static !important;
    width: 100% !important;
    margin: 10px 0 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    line-height: 1 !important;
  }

  body #index_news .news-pagination .swiper-pagination-bullet {
    width: 8px !important;
    height: 8px !important;
    margin: 0 !important;
    border-radius: 999px !important;
    background: #c7d0e0 !important;
    opacity: 1 !important;
  }

  body #index_news .news-pagination .swiper-pagination-bullet-active {
    width: 18px !important;
    background: #2f3b5f !important;
  }

  body #index_introduction .list {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body #index_introduction .list .item {
    width: 100% !important;
    margin: 0 !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    border: 1px solid #e4ebf7 !important;
    box-shadow: 0 3px 10px rgba(18, 34, 61, 0.06) !important;
    display: flex !important;
    flex-direction: column !important;
    background: #fff !important;
  }

  body #index_introduction .list .item .item-left,
  body #index_introduction .list .item .item-right {
    width: 100% !important;
  }

  body #index_introduction .list .item .item-left img {
    width: 100% !important;
    display: block !important;
  }

  body #index_introduction .list .item .item-right {
    padding: 12px !important;
    gap: 8px !important;
  }

  body #index_introduction .list .item .item-title {
    font-size: 19px !important;
    line-height: 1.25 !important;
    color: #23356a !important;
  }

  body #index_introduction .list .item .item-subtitle {
    font-size: 17px !important;
    line-height: 1.3 !important;
  }

  body #index_introduction .list .item .underline {
    width: 44px !important;
    margin: 10px 0 !important;
  }

  body #index_introduction .list .item .content,
  body #index_introduction .list .item .item-right > div:last-child {
    font-size: 13px !important;
    line-height: 1.65 !important;
    color: #51617d !important;
    width: 100% !important;
  }

  body #index_type .container-fluid.box {
    display: flex !important;
    flex-direction: column-reverse !important;
    padding: 0 !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    border: 1px solid rgba(255, 255, 255, 0.35) !important;
  }

  body #index_type .left_img {
    width: 100% !important;
    aspect-ratio: 16 / 9 !important;
    object-fit: cover !important;
  }

  body #index_type .right {
    width: 100% !important;
    padding: 16px 12px !important;
    background: rgba(255, 255, 255, 0.9) !important;
    backdrop-filter: blur(2px) !important;
  }

  body #index_type .right .futitle {
    font-size: 12px !important;
    color: #6f7f98 !important;
  }

  body #index_type .right .title {
    margin-top: 6px !important;
    font-size: 24px !important;
    line-height: 1.15 !important;
    color: #1f2f4d !important;
  }

  body #index_type .right .content {
    margin-top: 10px !important;
    font-size: 13px !important;
    line-height: 1.65 !important;
    color: #4c5c77 !important;
  }

  body #index_type .box .bottom {
    width: 100% !important;
    height: auto !important;
    margin: 14px 0 0 !important;
    padding: 10px !important;
    border-radius: 10px !important;
    position: relative !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 0 !important;
    background: rgba(255, 255, 255, 0.94) !important;
    border: 1px solid #e1e8f5 !important;
    overflow: hidden !important;
  }

  body #index_type .box .bottom .item {
    width: 100% !important;
    margin: 0 !important;
    min-height: 94px !important;
    padding: 10px 8px !important;
    border-radius: 0 !important;
    border: 0 !important;
    background: transparent !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
  }

  body #index_type .box .bottom .item:nth-child(odd) {
    border-right: 1px solid #d6dfef !important;
  }

  body #index_type .box .bottom .item:nth-child(n + 3) {
    border-top: 1px solid #e6edf8 !important;
  }

  body #index_type .box .bottom .item .bottom_img {
    display: none !important;
  }

  body #index_type .left_img[src=""],
  body #index_type .left_img:not([src]),
  body #index_type .box .bottom .item img[src=""],
  body #index_type .box .bottom .item img:not([src]) {
    display: none !important;
  }

  body #index_type .box .bottom .item .son {
    margin-left: 0 !important;
    gap: 2px !important;
    align-items: center !important;
    text-align: center !important;
  }

  body #index_type .box .bottom .item .son > div {
    display: flex !important;
    align-items: baseline !important;
    justify-content: center !important;
    gap: 2px !important;
  }

  body #index_type .box .bottom .item .son .font {
    font-size: 18px !important;
    line-height: 1.2 !important;
  }

  body #index_type .box .bottom .item .son .icon {
    display: inline !important;
    width: auto !important;
    height: auto !important;
    min-width: 0 !important;
    min-height: 0 !important;
    background: transparent !important;
    margin: 0 !important;
    padding: 0 !important;
    color: inherit !important;
  }

  body #index_type .box .bottom .item .son .timer2 {
    font-size: 11px !important;
    line-height: 1.35 !important;
  }

  body #index_type .right .more {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    width: auto !important;
    max-width: max-content !important;
    white-space: nowrap !important;
    line-height: 1 !important;
    margin-top: 10px !important;
    padding: 8px 14px !important;
    border: 1px solid #c8d3e8 !important;
    border-radius: 9px !important;
    font-size: 13px !important;
    color: #2a3a56 !important;
    background: #fff !important;
  }

  body #index_type .right .more img {
    width: 16px !important;
    height: 16px !important;
    min-width: 16px !important;
    max-width: 16px !important;
    flex: 0 0 16px !important;
    object-fit: contain !important;
    display: block !important;
  }

  /* Stabilize #index_type text/content against aggressive global mobile rules */
  body #index_type .right .title,
  body #index_type .right .title *,
  body #index_type .right .content,
  body #index_type .right .content *,
  body #index_type .right .content p,
  body #index_type .right .content span {
    color: #314563 !important;
    opacity: 1 !important;
    filter: none !important;
    text-shadow: none !important;
    visibility: visible !important;
  }

  body #index_type .right .content {
    display: block !important;
    width: 100% !important;
    margin: 10px 0 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
  }

  body #index_type .right .content p,
  body #index_type .right .content div {
    margin: 0 0 8px !important;
    padding: 0 !important;
    line-height: 1.65 !important;
  }

  body #index_type .right .content p:last-child,
  body #index_type .right .content div:last-child {
    margin-bottom: 0 !important;
  }

  body #index_type .right .content img {
    max-width: 100% !important;
    height: auto !important;
  }

  body #index_type .right > div,
  body #index_type .right > a {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  body #index_type .box .bottom,
  body #index_type .box .bottom * {
    visibility: visible !important;
  }

  body #index_type .box .bottom .item,
  body #index_type .box .bottom .item * {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  /* About page */
  body .about_introduce {
    margin: 0 0 14px !important;
    padding: 18px 12px !important;
    border: 1px solid var(--m-line) !important;
    border-radius: var(--m-radius) !important;
    box-shadow: 0 8px 24px rgba(18, 35, 67, 0.08) !important;
    overflow: hidden !important;
  }

  body .about_introduce .box.container-fluid {
    padding: 0 !important;
  }

  body .about_introduce .box .flex {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
  }

  body .about_introduce .left,
  body .about_introduce .right {
    width: 100% !important;
    max-width: 100% !important;
  }

  body .about_introduce .left .title {
    margin: 0 0 6px !important;
    font-size: 22px !important;
    line-height: 1.22 !important;
    color: #243352 !important;
  }

  body .about_introduce .left .home-title {
    padding: 0 !important;
    margin: 0 0 8px !important;
    text-align: left !important;
  }

  body .about_introduce .left .home-title p {
    margin: 0 !important;
    font-size: 13px !important;
    color: #7a89a2 !important;
  }

  body .about_introduce .left .content,
  body .about_introduce .supplier p {
    font-size: 14px !important;
    line-height: 1.72 !important;
    color: #4e5f7b !important;
    word-break: break-word !important;
  }

  body .about_introduce img.about_imgone,
  body .about_introduce img.about_imgtwo,
  body .about_introduce img.about_imgthere {
    width: 100% !important;
    border-radius: 11px !important;
    object-fit: cover !important;
  }

  body #about_advantage {
    padding: 0 12px 12px !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  body #about_advantage .son {
    margin: 0 !important;
    padding: 12px !important;
    border: 1px solid #e4ebf7 !important;
    border-radius: 12px !important;
    background: #fff !important;
  }

  body #about_advantage .son img {
    border-radius: 8px !important;
  }

  body .about_introduce.supplier_bj {
    background-size: cover !important;
    background-position: center !important;
  }

  body .about_introduce .supplier .supplier_content {
    margin: 0 !important;
    border-radius: 12px !important;
    padding: 12px !important;
    background: rgba(21, 33, 55, 0.54) !important;
    color: #fff !important;
  }

  /* Product list page */
  body #product {
    margin: 0 0 14px !important;
    border-radius: var(--m-radius) !important;
  }

  body #product .product_search {
    border-radius: 12px !important;
    box-shadow: 0 3px 12px rgba(18, 35, 67, 0.08) !important;
  }

  body #product .list_flex .list {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  body #product .list_flex .list .item .product_title {
    min-height: 52px !important;
    padding: 9px 9px 12px !important;
    font-size: 13px !important;
    line-height: 1.5 !important;
  }

  /* News / Case list pages */
  body .case_titles + #news,
  body .case_titles + .box#news,
  body .case_titles + .box.container-fluid#news {
    margin: 0 0 14px !important;
  }

  body .case_titles + #news .list .item,
  body .case_titles + .box#news .list .item,
  body .case_titles + .box.container-fluid#news .list .item {
    box-shadow: 0 4px 12px rgba(15, 30, 56, 0.08) !important;
  }

  /* Contact page */
  body #guestbook {
    margin: 0 0 14px !important;
    border-radius: var(--m-radius) !important;
  }

  body #guestbook .guestbook_content,
  body #guestbook form,
  body #guestbook .map {
    box-shadow: 0 3px 12px rgba(18, 35, 67, 0.08) !important;
  }

  /* Generic content/detail page card layout */
  body #news {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  body #news .new-list {
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  body #news .new-list .new-right {
    width: 100% !important;
  }

  body #news .new-right-list {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  body #news .new-right-list > a {
    margin: 0 !important;
    border: 1px solid var(--m-line) !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    background: #fff !important;
    box-shadow: 0 3px 10px rgba(18, 35, 67, 0.06) !important;
    display: flex !important;
    flex-direction: column !important;
    padding: 0 !important;
  }

  body #news .new-right-list > a .image {
    width: 100% !important;
  }

  body #news .new-right-list > a .image .slide {
    padding-bottom: 64% !important;
  }

  body #news .new-right-list > a dd {
    width: 100% !important;
    padding: 10px 11px 12px !important;
  }

  body #news .new-right-list > a dd h4 {
    margin: 0 0 8px !important;
    height: auto !important;
    font-size: 16px !important;
    line-height: 1.4 !important;
    white-space: normal !important;
  }

  body #news .new-right-list > a dd .description {
    margin: 0 0 8px !important;
    font-size: 13px !important;
    line-height: 1.6 !important;
    color: #5b6b85 !important;
  }

  body #news .new-right-list > a dd .more {
    width: 100% !important;
    margin: 0 !important;
    border-radius: 8px !important;
    min-height: 38px !important;
    line-height: 38px !important;
    font-size: 13px !important;
  }

  body #news .new-list .view-contact {
    width: 100% !important;
    margin: 0 !important;
    padding: 14px !important;
    border-radius: 14px !important;
    border: 1px solid var(--m-line) !important;
    background: #fff !important;
    box-shadow: 0 6px 20px rgba(16, 31, 56, 0.08) !important;
  }

  body #news .new-list .view-contact .title {
    margin: 0 0 12px !important;
    padding: 0 0 10px !important;
    border-bottom: 1px solid #e7edf7 !important;
    text-align: left !important;
    font-size: 21px !important;
    line-height: 1.35 !important;
    color: #21304e !important;
    word-break: break-word !important;
  }

  body #news .new-list .view-contact .view-bool {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 6px !important;
    height: auto !important;
    margin: 0 0 12px !important;
    padding: 0 0 10px !important;
    border-bottom: 1px dashed #d8e1ef !important;
    font-size: 12px !important;
    color: #7987a1 !important;
  }

  body #news .new-list .view-contact .view-bool i {
    order: 3 !important;
    margin-left: auto !important;
    float: none !important;
    width: auto !important;
    min-width: 96px !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
    background: var(--m-accent) !important;
    color: #fff !important;
    text-align: center !important;
  }

  body #news .new-list .view-contact .view-bool i a {
    color: #fff !important;
  }

  body #news .new-list .view-contact .view-bool span {
    margin: 0 !important;
  }

  body #news .new-list .view-contact .endit-content {
    margin: 0 !important;
    padding: 2px 0 0 !important;
    font-size: 14px !important;
    line-height: 1.78 !important;
    color: #495a77 !important;
    overflow: visible !important;
  }

  body #news .new-list .view-contact .endit-content p {
    margin: 0 0 12px !important;
    text-align: left !important;
  }

  body #news .new-list .view-contact .endit-content h2,
  body #news .new-list .view-contact .endit-content h3,
  body #news .new-list .view-contact .endit-content h4 {
    margin: 12px 0 8px !important;
    line-height: 1.4 !important;
    color: #273857 !important;
  }

  body #news .new-list .view-contact .endit-content img {
    max-width: 100% !important;
    border-radius: 10px !important;
    margin: 10px 0 !important;
    display: block !important;
  }

  body #news .new-list .view-contact .endit-content table {
    width: 100% !important;
    border-collapse: collapse !important;
  }

  body #news .new-list .view-contact .endit-content table td,
  body #news .new-list .view-contact .endit-content table th {
    border: 1px solid #dce4f2 !important;
    padding: 8px !important;
    font-size: 13px !important;
  }

  body #news .p14-info-3 {
    margin: 14px 0 10px !important;
    padding: 10px 12px !important;
    border-radius: 12px !important;
    border: 1px solid #e2e9f7 !important;
    background: #f7f9fd !important;
  }

  body #news .p14-info-3 .p14-info-3-tit {
    margin: 0 0 8px !important;
    height: auto !important;
    font-size: 16px !important;
    line-height: 1.4 !important;
    color: #2b3a58 !important;
  }

  body #news .p14-info-3 .p14-info-3-list li h4 {
    height: auto !important;
    margin: 0 !important;
    padding: 10px 0 !important;
    border-top: 1px dashed #d6deec !important;
    font-size: 13px !important;
    line-height: 1.5 !important;
    white-space: normal !important;
  }

  body #news .p14-info-3 .p14-info-3-list li:first-child h4 {
    border-top: none !important;
  }

  body #news .p14-pagination-1 {
    margin: 0 !important;
    padding: 10px 12px !important;
    border-radius: 12px !important;
    border: 1px solid #e2e9f7 !important;
    background: #fff !important;
  }

  body #news .p14-pagination-1 dl {
    margin: 0 0 10px !important;
    padding: 0 !important;
  }

  body #news .p14-pagination-1 dd {
    height: auto !important;
    line-height: 1.55 !important;
    white-space: normal !important;
    overflow: visible !important;
    font-size: 13px !important;
    color: #5c6d88 !important;
  }

  body #news .p14-pagination-1 dd span {
    width: auto !important;
    min-width: 52px !important;
    height: 24px !important;
    line-height: 24px !important;
    padding: 0 8px !important;
    border-radius: 999px !important;
    margin-right: 6px !important;
    font-size: 12px !important;
  }

  body #news .p14-pagination-1 dd b,
  body #news .p14-pagination-1 dd em {
    float: none !important;
    display: inline !important;
    padding: 0 !important;
  }

  body #news .p14-pagination-1-href {
    float: none !important;
    margin: 0 0 8px !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
  }

  body #news .p14-pagination-1-href span {
    margin: 0 !important;
    padding: 0 !important;
    background: none !important;
  }

  body #news .p14-pagination-1-href a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 34px !important;
    padding: 0 12px !important;
    border-radius: 999px !important;
    border: 1px solid var(--m-line) !important;
    background: #f6f9ff !important;
    color: #3b4c6a !important;
  }

  body #news .p14-pagination-1-key {
    margin: 0 !important;
    min-height: 0 !important;
    border-top: 1px dashed #dce4f1 !important;
    padding-top: 8px !important;
    font-size: 13px !important;
    line-height: 1.65 !important;
  }

  body #news .p14-pagination-1-key p {
    margin: 0 !important;
  }

  body #news .p14-pagination-1-key a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 4px 4px 0 0 !important;
    min-height: 28px !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
    border: 1px solid #d8e1ef !important;
    background: #f5f8fe !important;
    color: #50617c !important;
    text-decoration: none !important;
  }

  /* Product detail page */
  body #productView {
    padding: 14px 12px !important;
  }

  body #productView .box.container-fluid {
    padding: 0 !important;
    max-width: 100% !important;
  }

  body #productView .list {
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    background: transparent !important;
  }

  body #productView .list .left,
  body #productView .list .right {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
    flex: none !important;
    margin: 0 !important;
  }

  body #productView .list .left {
    padding: 12px !important;
    border: 1px solid var(--m-line) !important;
    border-radius: 14px !important;
    background: #fff !important;
    box-shadow: 0 6px 20px rgba(17, 32, 58, 0.08) !important;
  }

  body #productView .list .left .swiper-product {
    border-radius: 10px !important;
    overflow: hidden !important;
    border: 1px solid #e4ebf7 !important;
  }

  body #productView .list .left .swiper-product .swiper-slide {
    aspect-ratio: 4 / 3 !important;
    height: auto !important;
  }

  body #productView .list .left .swiper-product .swiper-slide img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }

  body #productView .list .left .swiper-product2 {
    margin-top: 10px !important;
  }

  body #productView .list .left .swiper-product2 .swiper-slide {
    width: auto !important;
    height: auto !important;
  }

  body #productView .swiper-product2 .swiper-slide img {
    width: 62px !important;
    height: 62px !important;
    border: 1px solid #dbe4f4 !important;
    border-radius: 8px !important;
    object-fit: cover !important;
  }

  body #productView .list .right {
    padding: 14px !important;
    border: 1px solid var(--m-line) !important;
    border-radius: 14px !important;
    background: #fff !important;
    box-shadow: 0 6px 20px rgba(17, 32, 58, 0.08) !important;
  }

  body #productView .list .right b {
    margin: 0 0 12px !important;
    padding: 0 0 10px !important;
    border-bottom: 1px solid #e4ebf7 !important;
    font-size: 21px !important;
    line-height: 1.32 !important;
    color: #223453 !important;
  }

  body #productView .list .right .parameter {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0 !important;
  }

  body #productView .list .right .parameter p {
    width: 100% !important;
    margin: 0 !important;
    padding: 8px 0 !important;
    border-bottom: 1px dashed #dde6f3 !important;
    font-size: 13px !important;
    line-height: 1.55 !important;
    color: #4a5b78 !important;
  }

  body #productView .list .right .parameter p:last-child {
    border-bottom: none !important;
  }

  body #productView .bottom {
    margin-top: 0 !important;
    padding: 14px !important;
    border: 1px solid var(--m-line) !important;
    border-radius: 14px !important;
    background: #fff !important;
    box-shadow: 0 6px 20px rgba(17, 32, 58, 0.08) !important;
  }

  body #productView .bottom .home-title {
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
  }

  body #productView .bottom .home-title b,
  body #productView .bottom .home-title p {
    margin: 0 !important;
    padding: 0 !important;
    font-size: 14px !important;
    line-height: 1.74 !important;
    color: #4a5b78 !important;
  }

  body #productView .bottom .home-title p::after,
  body #productView .bottom .home-title b::before,
  body #productView .bottom .home-title b::after {
    display: none !important;
  }

  /* Unified mobile pagination */
  body .p12-pagination-1 {
    margin-top: 10px !important;
  }

  body .p12-pagination-1-main {
    padding: 10px 0 !important;
    height: auto !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
  }

  body .p12-pagination-1-main a,
  body .p12-pagination-1-main .current,
  body .p12-pagination-1-main .disabled {
    min-width: 30px !important;
    height: 30px !important;
    line-height: 30px !important;
    border-radius: 8px !important;
    font-size: 12px !important;
    padding: 0 8px !important;
  }
}

@media (max-width: 576px) {
  body .header .logo {
    width: 30vw !important;
    max-width: 104px !important;
    min-width: 78px !important;
  }

  body #nav_top #collapase-nav > img.mobile-img,
  body .footer .footIcon img.logo {
    width: 74px !important;
    max-width: 74px !important;
    min-width: 74px !important;
  }

  body #index_product .list.list_product,
  body #product .list_flex .list {
    grid-template-columns: 1fr !important;
  }

  body #index_type .box .bottom {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body #index_product .home-title b,
  body #index_elegant .home-title.case_flex > span,
  body #index_introduction .home-title b,
  body #index_honor .home-title b,
  body #index_news .home-title b {
    font-size: 20px !important;
  }

  body #news .new-list .view-contact .title,
  body #productView .list .right b {
    font-size: 19px !important;
  }
}

/* Mobile tighten + footer clarity and contact position */
@media (max-width: 768px) {
  /* Reduce excessive vertical gaps across pages */
  body .section {
    margin: 0 0 8px !important;
    padding: 6px 0 0 !important;
  }

  body .box,
  body .box.container-fluid,
  body .boxnotop {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }

  body .home-title {
    margin-bottom: 8px !important;
    padding-bottom: 12px !important;
  }

  body .home-title p::after {
    bottom: -7px !important;
    height: 2px !important;
  }

  body #index_product,
  body #index_elegant,
  body #index_introduction,
  body #index_type,
  body #index_honor,
  body #index_news,
  body #product,
  body #news,
  body #guestbook,
  body #about,
  body #productView,
  body .about_introduce {
    margin-bottom: 10px !important;
  }

  body #index_product,
  body #index_elegant,
  body #index_introduction,
  body #index_type,
  body #index_honor,
  body #index_news {
    padding-top: 14px !important;
    padding-bottom: 14px !important;
  }

  body .p12-pagination-1,
  body #news .p14-info-3,
  body #news .p14-pagination-1 {
    margin-top: 8px !important;
    margin-bottom: 8px !important;
  }

  /* Footer text clarity ("自2009..." paragraph) */
  body .footer {
    padding-top: 14px !important;
    padding-bottom: 14px !important;
    --mobile-footer-box-bg: rgba(255, 255, 255, 0.06);
    --mobile-footer-card-bg: rgba(255, 255, 255, 0.05);
  }

  body .footer .container-fluid.bottom_padding {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  body .footer .footIcon {
    margin-bottom: 10px !important;
  }

  body .footer .footIcon .bottom_title {
    color: #e8eef8 !important;
    font-size: 14px !important;
    line-height: 1.82 !important;
    font-weight: 500 !important;
    text-shadow: none !important;
    filter: none !important;
    opacity: 1 !important;
    letter-spacing: 0 !important;
    -webkit-font-smoothing: antialiased !important;
    text-rendering: optimizeLegibility !important;
    display: block !important;
    margin: 0 auto !important;
    padding: 10px 12px !important;
    border-radius: 10px !important;
    background: var(--mobile-footer-card-bg) !important;
    border: 1px solid rgba(227, 234, 247, 0.2) !important;
  }

  body .footer .bottom {
    margin-top: 6px !important;
    padding: 10px 12px !important;
    line-height: 1.6 !important;
  }

  /* Fallback compact style before JS relocation */
  body .footer .list > .item:last-child {
    justify-content: flex-start !important;
    gap: 8px !important;
  }

  body .footer .list > .item:last-child > .flex_al {
    min-height: 0 !important;
    padding: 8px 10px !important;
    margin: 0 !important;
  }

  /* Mobile: contact block sits above copyright bar, copyright stays at bottom */
  body .footer > .mobile-footer-contact-bottom {
    width: calc(100% - 24px) !important;
    margin: 8px 12px 0 !important;
    padding: 10px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    border: 1px solid rgba(227, 234, 247, 0.32) !important;
    border-radius: 12px !important;
    background: var(--mobile-footer-box-bg) !important;
    box-sizing: border-box !important;
  }

  body .footer > .mobile-footer-contact-bottom .flex_al {
    display: flex !important;
    align-items: flex-start !important;
    gap: 8px !important;
    margin: 0 !important;
    padding: 8px 8px !important;
    border-radius: 9px !important;
    background: var(--mobile-footer-card-bg) !important;
    min-height: 0 !important;
  }

  body .footer > .mobile-footer-contact-bottom .flex_al img {
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    min-height: 18px !important;
    margin-top: 2px !important;
  }

  body .footer > .mobile-footer-contact-bottom .menu-children-list {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    width: auto !important;
    flex: 1 1 auto !important;
  }

  body .footer > .mobile-footer-contact-bottom .menu-children-list > div {
    gap: 2px !important;
  }

  body .footer > .mobile-footer-contact-bottom .menu-children-list .mintitle {
    margin: 0 0 2px !important;
    font-size: 12px !important;
    line-height: 1.35 !important;
    color: #c4cddb !important;
  }

  body .footer > .mobile-footer-contact-bottom .menu-children-list span {
    font-size: 13px !important;
    line-height: 1.5 !important;
    color: #fff !important;
    word-break: break-word !important;
  }

  body .footer > .mobile-footer-contact-bottom .mobile-hotline-line {
    display: block !important;
    margin: 0 0 2px !important;
    font-size: 13px !important;
    line-height: 1.5 !important;
    color: #fff !important;
    word-break: break-word !important;
    overflow-wrap: anywhere !important;
  }

  body .footer > .mobile-footer-contact-bottom.mobile-merge-ready > .flex_al:first-child {
    display: none !important;
  }
}

@media (max-width: 576px) {
  body .section {
    margin-bottom: 6px !important;
  }

  body .box,
  body .box.container-fluid,
  body .boxnotop {
    padding-top: 8px !important;
    padding-bottom: 8px !important;
  }

  body .footer .footIcon .bottom_title {
    font-size: 13px !important;
    line-height: 1.75 !important;
  }

  body .footer > .mobile-footer-contact-bottom {
    width: calc(100% - 20px) !important;
    margin: 8px 10px 0 !important;
    padding: 9px !important;
  }
}

/* Mobile footer final polish: avoid crowding/overlap in logo + contact area */
@media (max-width: 768px) {
  body .footer .footIcon {
    width: calc(100% - 24px) !important;
    margin: 0 12px 14px !important;
    padding: 12px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 10px !important;
    border-radius: 12px !important;
    background: var(--mobile-footer-box-bg, rgba(255, 255, 255, 0.06)) !important;
    border: 1px solid rgba(227, 234, 247, 0.24) !important;
    box-sizing: border-box !important;
    text-align: center !important;
  }

  body .footer .footIcon .bottom_title {
    width: 100% !important;
    margin: 0 !important;
    padding: 12px 12px !important;
    border-radius: 12px !important;
    background: var(--mobile-footer-box-bg, rgba(255, 255, 255, 0.06)) !important;
    border: 1px solid rgba(227, 234, 247, 0.32) !important;
  }

  body .footer .footIcon.img-error::after {
    margin-top: 2px !important;
    margin-bottom: 2px !important;
  }

  body .footer > .item.mobile-footer-contact-bottom {
    width: calc(100% - 24px) !important;
    margin: 14px 12px 0 !important;
    padding: 9px !important;
    text-align: left !important;
    box-sizing: border-box !important;
    gap: 6px !important;
  }

  body .footer > .item.mobile-footer-contact-bottom > .flex_al {
    margin: 0 !important;
    padding: 10px 10px !important;
    gap: 10px !important;
    align-items: flex-start !important;
  }

  body .footer > .item.mobile-footer-contact-bottom > .flex_al + .flex_al {
    margin-top: 4px !important;
  }

  body .footer > .item.mobile-footer-contact-bottom > .flex_al:first-child {
    display: none !important;
  }

  body .footer > .item.mobile-footer-contact-bottom .menu-children-list,
  body .footer > .item.mobile-footer-contact-bottom .menu-children-list > div {
    width: auto !important;
    text-align: left !important;
  }

  body .footer > .item.mobile-footer-contact-bottom .menu-children-list > div {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 6px !important;
  }

  body .footer > .item.mobile-footer-contact-bottom .menu-children-list .mintitle {
    margin: 0 !important;
    line-height: 1.35 !important;
    position: static !important;
    float: none !important;
  }

  body .footer > .item.mobile-footer-contact-bottom .mobile-hotline-line,
  body .footer > .item.mobile-footer-contact-bottom .menu-children-list span {
    margin: 0 !important;
    line-height: 1.5 !important;
  }
}

@media (max-width: 576px) {
  body .footer .footIcon {
    width: calc(100% - 20px) !important;
    margin: 0 10px 12px !important;
    padding: 10px !important;
    gap: 8px !important;
  }

  body .footer > .item.mobile-footer-contact-bottom {
    width: calc(100% - 20px) !important;
    margin: 12px 10px 0 !important;
    padding: 9px !important;
  }
}

/* Mobile footer hard override: remove white frame and keep compact contacts */
@media (max-width: 768px) {
  html body .footer .container-fluid.bottom_padding,
  html body .footer .list {
    background: transparent !important;
    background-color: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  html body .footer .footIcon {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  html body .footer .footIcon .bottom_title {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    border: 0 !important;
    box-shadow: none !important;
    color: #e8eef8 !important;
  }

  html body .footer > .item.mobile-footer-contact-bottom,
  html body .footer .list > .item.mobile-footer-contact-bottom {
    background-color: rgba(255, 255, 255, 0.06) !important;
    background-image: none !important;
    gap: 4px !important;
  }

  html body .footer > .item.mobile-footer-contact-bottom > .flex_al,
  html body .footer .list > .item.mobile-footer-contact-bottom > .flex_al {
    background-color: rgba(255, 255, 255, 0.05) !important;
  }

  html body .footer > .item.mobile-footer-contact-bottom > .flex_al + .flex_al,
  html body .footer .list > .item.mobile-footer-contact-bottom > .flex_al + .flex_al {
    margin-top: 2px !important;
  }

  html body .footer .list > .item:last-child > .flex_al + .flex_al {
    margin-top: 2px !important;
  }

  html body .footer > .item.mobile-footer-contact-bottom > .flex_al:first-child,
  html body .footer .list > .item.mobile-footer-contact-bottom > .flex_al:first-child,
  html body .footer .list > .item:last-child > .flex_al:first-child {
    display: none !important;
  }
}

/* Home mobile cleanup: remove excessive top/between-section blank areas */
@media (max-width: 768px) {
  /* Cancel legacy global top offset that creates large blank area */
  body {
    padding-top: 54px !important;
  }

  body .main-content,
  body .content,
  body .page-content {
    padding-top: 0 !important;
  }

  /* Keep only one compact header row on mobile */
  body .header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 10020 !important;
    margin: 0 !important;
    padding: 0 !important;
    min-height: 0 !important;
  }

  body .header > .container-fluid.sonone {
    padding-top: 8px !important;
    padding-bottom: 8px !important;
    min-height: 56px !important;
    margin: 0 !important;
  }

  body .header > .container-fluid:not(.sonone) {
    display: none !important;
  }

  /* Remove blank strip above first screen */
  body .header + #nav_top + .mobile-container,
  body .header + #nav_top + .banner-container,
  body #nav_top + .mobile-container,
  body #nav_top + .banner-container {
    margin-top: 0 !important;
  }

  /* Remove the highlighted empty block below banner */
  body > .mobile-container .span1,
  body > .mobile-container .span2,
  body > .mobile-container b.span1,
  body > .mobile-container span.span2 {
    display: none !important;
    visibility: hidden !important;
  }

  body > .mobile-container .banner-pagination {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    overflow: hidden !important;
  }

  body > .mobile-container .banner-pagination,
  body > .mobile-container .banner-pagination * {
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 0 !important;
    min-height: 0 !important;
  }

  body > .mobile-container {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  body > .mobile-container::before {
    display: none !important;
    content: none !important;
  }

  body > .mobile-container .swiper-slide,
  body > .mobile-container .swiper-wrapper {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  body #index_product {
    margin-top: 0 !important;
  }
}

@media (max-width: 576px) {
  body .header > .container-fluid.sonone {
    padding-top: 6px !important;
    padding-bottom: 6px !important;
    min-height: 52px !important;
  }
}

/* Mobile footer spacing rescue: separate description/contact and remove bottom blank */
@media (max-width: 768px) {
  html,
  body {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    min-height: auto !important;
  }

  body > .footer {
    margin-bottom: 0 !important;
    padding-bottom: 8px !important;
  }

  body .footer .footIcon {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  body .footer .footIcon .bottom_title {
    margin: 0 0 14px !important;
    padding-bottom: 12px !important;
    line-height: 1.8 !important;
  }

  body .footer > .item.mobile-footer-contact-bottom,
  body .footer .list > .item.mobile-footer-contact-bottom {
    margin-top: 14px !important;
    clear: both !important;
    position: relative !important;
  }

  body .footer > .item.mobile-footer-contact-bottom > .flex_al,
  body .footer .list > .item.mobile-footer-contact-bottom > .flex_al {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }

  body > #back-to-top {
    margin: 0 !important;
    padding: 0 !important;
  }
}

@media (max-width: 576px) {
  body .footer .footIcon .bottom_title {
    margin-bottom: 12px !important;
    line-height: 1.75 !important;
  }

  body .footer > .item.mobile-footer-contact-bottom,
  body .footer .list > .item.mobile-footer-contact-bottom {
    margin-top: 12px !important;
  }
}

/* Product category: mobile carousel and overlay title restore */
@media (max-width: 768px) {
  body #index_product .list.list_product.product-container {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    min-height: 0 !important;
  }

  body #index_product .list.list_product.product-container .swiper-wrapper.product-wrapper {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 0 !important;
    min-height: 0 !important;
  }

  body #index_product .list.list_product.product-container .swiper-slide.item {
    width: 100% !important;
    flex: 0 0 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid #dfe7f5 !important;
    border-radius: 12px !important;
    background: #fff !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    min-height: 0 !important;
    box-shadow: 0 4px 14px rgba(17, 34, 61, 0.1) !important;
    text-decoration: none !important;
    text-align: left !important;
    font-size: 0 !important;
    line-height: 0 !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  body #index_product .list.list_product.product-container .swiper-slide.item .image {
    position: relative !important;
    width: 100% !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 0 66% !important;
    overflow: hidden !important;
    background: #edf3fb !important;
  }

  body #index_product .list.list_product.product-container .swiper-slide.item .image .mask_layer {
    position: absolute !important;
    inset: 0 !important;
    opacity: 0.32 !important;
    background: linear-gradient(180deg, rgba(24, 43, 72, 0.2), rgba(16, 31, 52, 0.52)) !important;
    border-radius: 0 !important;
    z-index: 2 !important;
  }

  body #index_product .list.list_product.product-container .swiper-slide.item .image .cate_icon {
    position: absolute !important;
    inset: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    z-index: 3 !important;
    pointer-events: none !important;
  }

  body #index_product .list.list_product.product-container .swiper-slide.item .image .cate_icon .inner_layer {
    width: 64% !important;
    max-width: 220px !important;
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  body #index_product .list.list_product.product-container .swiper-slide.item .image .cate_icon .inner_layer img {
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    object-fit: contain !important;
    display: block !important;
    filter: drop-shadow(0 2px 6px rgba(0, 0, 0, 0.22)) !important;
  }

  body #index_product .list.list_product.product-container .swiper-slide.item .image .cate_icon .inner_layer .cate_typename {
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;
    width: 78% !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 14px !important;
    line-height: 1.35 !important;
    font-weight: 600 !important;
    color: #fff !important;
    text-align: center !important;
    text-shadow: 0 2px 6px rgba(8, 20, 39, 0.7) !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    z-index: 2 !important;
  }

  body #index_product .list.list_product.product-container .swiper-slide.item .image > img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    object-fit: cover !important;
    z-index: 1 !important;
  }

  body #index_product .list.list_product.product-container .swiper-slide.item .image.img-error {
    background: linear-gradient(135deg, #dfe9f8, #edf3fb) !important;
  }

  body #index_product .list.list_product.product-container .swiper-slide.item .image.img-error::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background: radial-gradient(circle at 75% 22%, rgba(255, 255, 255, 0.55) 0, rgba(255, 255, 255, 0) 42%) !important;
    z-index: 0 !important;
  }

  body #index_product .list.list_product.product-container .swiper-slide.item .mobile-product-title,
  body #index_product .list.list_product.product-container .swiper-slide.item .product_title,
  body #index_product .list.list_product.product-container .swiper-slide.item .product-name {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 10px 12px 12px !important;
    font-size: 13px !important;
    line-height: 1.55 !important;
    font-weight: 500 !important;
    color: #263d62 !important;
    text-align: center !important;
    white-space: normal !important;
    word-break: break-word !important;
  }

  body #index_product .list.list_product.product-container .product-pagination {
    position: static !important;
    width: 100% !important;
    margin: 10px 0 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    line-height: 0 !important;
    min-height: 0 !important;
  }

  body #index_product .list.list_product.product-container .product-pagination .swiper-pagination-bullet {
    width: 7px !important;
    height: 7px !important;
    margin: 0 !important;
    border-radius: 999px !important;
    background: #9faecd !important;
    opacity: 1 !important;
  }

  body #index_product .list.list_product.product-container .product-pagination .swiper-pagination-bullet-active {
    width: 18px !important;
    background: #2f4d86 !important;
  }

  /* Fallback: if Swiper init fails, keep cards horizontally visible */
  body #index_product .list.list_product.product-container:not(.swiper-container-initialized) {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    scroll-snap-type: x mandatory !important;
    padding-bottom: 2px !important;
  }

  body #index_product .list.list_product.product-container:not(.swiper-container-initialized) .swiper-wrapper.product-wrapper {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 10px !important;
  }

  body #index_product .list.list_product.product-container:not(.swiper-container-initialized) .swiper-slide.item {
    width: 82% !important;
    flex: 0 0 82% !important;
    scroll-snap-align: start !important;
  }
}

/* Type module: mobile hero carousel */
@media (max-width: 768px) {
  body #index_type .container-fluid.box {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
  }

  body #index_type .left_img {
    display: block !important;
  }

  body #index_type .type-visual-container {
    display: none !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 100% !important;
    margin: 4px 0 8px !important;
    padding: 0 !important;
    overflow: hidden !important;
    border-radius: 12px !important;
    border: 1px solid #dfe7f5 !important;
    background: #edf3fb !important;
  }

  body #index_type .type-visual-container .type-visual-wrapper {
    display: flex !important;
    flex-wrap: nowrap !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body #index_type .type-visual-container .swiper-slide {
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    visibility: visible !important;
    opacity: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
  }

  body #index_type .type-visual-container .type-visual-slide {
    position: relative !important;
    width: 100% !important;
    height: 0 !important;
    padding-bottom: 56% !important;
    overflow: hidden !important;
    background: linear-gradient(135deg, #dfe9f8, #edf3fb) !important;
  }

  body #index_type .type-visual-container .type-visual-slide img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    object-fit: cover !important;
  }

  body #index_type .type-visual-container .type-visual-slide.img-error::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background: radial-gradient(circle at 74% 22%, rgba(255, 255, 255, 0.55) 0, rgba(255, 255, 255, 0) 42%) !important;
  }

  body #index_type .type-visual-container .type-visual-caption {
    width: 100% !important;
    margin: 0 !important;
    padding: 10px 12px 12px !important;
    background: #fff !important;
    border-top: 1px solid #e3ebf8 !important;
  }

  body #index_type .type-visual-container .type-visual-caption .type-caption-text {
    margin: 0 0 10px !important;
    padding: 0 !important;
    font-size: 13px !important;
    line-height: 1.65 !important;
    color: #3f5272 !important;
    text-align: left !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 3 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  body #index_type .type-visual-container .type-visual-caption .type-caption-stats {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  body #index_type .type-visual-container .type-visual-caption .type-caption-stat {
    background: #f3f7ff !important;
    border: 1px solid #e0e8f7 !important;
    border-radius: 8px !important;
    padding: 8px 6px !important;
    text-align: center !important;
  }

  body #index_type .type-visual-container .type-visual-caption .type-caption-stat b {
    display: block !important;
    margin: 0 !important;
    font-size: 16px !important;
    line-height: 1.2 !important;
    color: #27416c !important;
    font-weight: 700 !important;
  }

  body #index_type .type-visual-container .type-visual-caption .type-caption-stat span {
    display: block !important;
    margin: 4px 0 0 !important;
    font-size: 11px !important;
    line-height: 1.35 !important;
    color: #5f7291 !important;
    word-break: break-word !important;
  }

  body #index_type .type-visual-pagination {
    position: static !important;
    width: 100% !important;
    margin: 8px 0 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    line-height: 0 !important;
  }

  body #index_type .type-visual-pagination .swiper-pagination-bullet {
    width: 7px !important;
    height: 7px !important;
    margin: 0 !important;
    border-radius: 999px !important;
    background: #9faecd !important;
    opacity: 1 !important;
  }

  body #index_type .type-visual-pagination .swiper-pagination-bullet-active {
    width: 18px !important;
    background: #2f4d86 !important;
  }

  body #index_type.type-carousel-ready .left_img {
    display: none !important;
  }

  body #index_type.type-carousel-ready .type-visual-container {
    display: block !important;
  }

  body #index_type .right {
    margin-top: 0 !important;
    padding-top: 12px !important;
    padding-bottom: 0 !important;
    justify-content: flex-start !important;
    align-items: stretch !important;
    min-height: 0 !important;
    margin-bottom: 0 !important;
  }

  body #index_type .right .title {
    width: 100% !important;
    text-align: center !important;
    justify-content: center !important;
    align-items: center !important;
    margin-top: 4px !important;
    margin-bottom: 2px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  body #index_type .right .futitle {
    width: 100% !important;
    text-align: center !important;
  }

  body #index_type.type-carousel-ready.type-carousel-has-caption .right .content,
  body #index_type.type-carousel-ready.type-carousel-has-caption .right .bottom,
  body #index_type.type-carousel-ready.type-carousel-has-caption .right .more {
    display: none !important;
  }

  body #index_type:not(.type-carousel-ready) .right .content,
  body #index_type:not(.type-carousel-ready) .right .bottom,
  body #index_type:not(.type-carousel-ready) .right .more {
    display: block !important;
  }

  body #index_type .container-fluid.box,
  body #index_type .type-visual-container,
  body #index_type .type-visual-container .type-visual-wrapper,
  body #index_type .type-visual-container .swiper-slide {
    min-height: 0 !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }
}

/* Introduction module: image carousel + text below image */
@media (max-width: 768px) {
  body #index_introduction {
    padding-top: 10px !important;
  }

  body #index_introduction .home-title {
    padding-bottom: 6px !important;
    text-align: center !important;
  }

  body #index_introduction .home-title b,
  body #index_introduction .home-title .futitle {
    text-align: center !important;
    justify-content: center !important;
  }

  body #index_introduction .intro-mobile-container {
    margin: 2px 0 8px !important;
    padding: 0 !important;
    overflow: hidden !important;
    border-radius: 12px !important;
  }

  body #index_introduction .intro-mobile-container .intro-mobile-wrapper {
    display: flex !important;
    flex-wrap: nowrap !important;
    margin: 0 !important;
    padding: 0 !important;
    align-items: stretch !important;
  }

  body #index_introduction .intro-mobile-container .intro-mobile-slide {
    border: 1px solid #dfe7f5 !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    background: #fff !important;
    width: 100% !important;
    min-width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
  }

  body #index_introduction .intro-mobile-container .intro-mobile-image {
    position: relative !important;
    width: 100% !important;
    height: 0 !important;
    padding-bottom: 58% !important;
    overflow: hidden !important;
    background: linear-gradient(135deg, #dfe9f8, #edf3fb) !important;
  }

  body #index_introduction .intro-mobile-container .intro-mobile-image img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
  }

  body #index_introduction .intro-mobile-container .intro-mobile-image.img-error::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background: radial-gradient(circle at 74% 22%, rgba(255, 255, 255, 0.55) 0, rgba(255, 255, 255, 0) 42%) !important;
  }

  body #index_introduction .intro-mobile-container .intro-mobile-caption {
    width: 100% !important;
    margin: 0 !important;
    padding: 10px 12px 12px !important;
    background: #fff !important;
    border-top: 1px solid #e2eaf8 !important;
    text-align: center !important;
  }

  body #index_introduction .intro-mobile-container .intro-mobile-caption h4 {
    margin: 0 !important;
    font-size: 21px !important;
    line-height: 1.2 !important;
    color: #2f46ba !important;
    font-weight: 700 !important;
  }

  body #index_introduction .intro-mobile-container .intro-mobile-caption h5 {
    margin: 6px 0 0 !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    color: #36455f !important;
    font-weight: 600 !important;
  }

  body #index_introduction .intro-mobile-container .intro-mobile-caption p {
    margin: 8px 0 0 !important;
    font-size: 12px !important;
    line-height: 1.65 !important;
    color: #586884 !important;
    text-align: center !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 4 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  body #index_introduction .intro-mobile-pagination {
    position: static !important;
    width: 100% !important;
    margin: 8px 0 0 !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 6px !important;
  }

  body #index_introduction .intro-mobile-pagination .swiper-pagination-bullet {
    width: 7px !important;
    height: 7px !important;
    margin: 0 !important;
    border-radius: 999px !important;
    background: #9faecd !important;
    opacity: 1 !important;
  }

  body #index_introduction .intro-mobile-pagination .swiper-pagination-bullet-active {
    width: 18px !important;
    background: #2f4d86 !important;
  }

  body #index_introduction .intro-mobile-container {
    display: none !important;
  }

  body #index_introduction.intro-mobile-ready .intro-mobile-container {
    display: block !important;
  }

  body #index_introduction.intro-mobile-ready .list {
    display: none !important;
  }
}

/* Keep home news section visible on mobile */
@media (max-width: 768px) {
  body #index_news {
    display: block !important;
  }
}

/* Product carousel: keep title on image only, hide text below image */
@media (max-width: 768px) {
  body #index_product .list.list_product.product-container.product-carousel-ready .swiper-slide.item .mobile-product-title,
  body #index_product .list.list_product.product-container.product-carousel-ready .swiper-slide.item .product_title,
  body #index_product .list.list_product.product-container.product-carousel-ready .swiper-slide.item .product-name {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  body #index_product .list.list_product.product-container.product-carousel-ready .swiper-slide.item > :not(.image) {
    display: none !important;
  }

  body #index_product .list.list_product.product-container.product-carousel-ready .swiper-slide.item,
  body #index_product .list.list_product.product-container.product-carousel-ready .swiper-slide.item * {
    visibility: visible !important;
    opacity: 1 !important;
  }
}

/* Mobile footer: force larger separation between description block and contacts block */
@media (max-width: 768px) {
  html body .footer .footIcon .bottom_title {
    margin: 0 0 20px !important;
    padding-bottom: 16px !important;
  }

  html body .footer > .item.mobile-footer-contact-bottom,
  html body .footer .list > .item.mobile-footer-contact-bottom {
    margin-top: 20px !important;
    clear: both !important;
    float: none !important;
    display: flex !important;
    flex-direction: column !important;
    position: relative !important;
  }

  html body .footer > .item.mobile-footer-contact-bottom::before,
  html body .footer .list > .item.mobile-footer-contact-bottom::before {
    content: "" !important;
    position: absolute !important;
    left: 10px !important;
    right: 10px !important;
    top: -10px !important;
    height: 1px !important;
    background: rgba(227, 234, 247, 0.35) !important;
    pointer-events: none !important;
  }

  html body .footer > .item.mobile-footer-contact-bottom > .flex_al + .flex_al,
  html body .footer .list > .item.mobile-footer-contact-bottom > .flex_al + .flex_al {
    margin-top: 8px !important;
    border-top: 0 !important;
  }
}

@media (max-width: 576px) {
  html body .footer .footIcon .bottom_title {
    margin-bottom: 16px !important;
    padding-bottom: 14px !important;
  }

  html body .footer > .item.mobile-footer-contact-bottom,
  html body .footer .list > .item.mobile-footer-contact-bottom {
    margin-top: 16px !important;
  }
}

/* Mobile footer spacing lock: keep description/contact blocks separated and readable */
@media (max-width: 768px) {
  html body .footer .footIcon,
  html body .footer .list .footIcon {
    margin: 0 12px 0 !important;
    padding: 0 !important;
    display: block !important;
  }

  html body .footer .footIcon .bottom_title,
  html body .footer .list .footIcon .bottom_title {
    margin: 0 !important;
    padding: 12px !important;
    border-radius: 12px !important;
    line-height: 1.82 !important;
    background: rgba(255, 255, 255, 0.06) !important;
    border: 1px solid rgba(227, 234, 247, 0.26) !important;
  }

  html body .footer > .item.mobile-footer-contact-bottom,
  html body .footer .list > .item.mobile-footer-contact-bottom {
    margin: 14px 12px 0 !important;
    padding: 10px !important;
    border-radius: 12px !important;
    background: rgba(255, 255, 255, 0.06) !important;
    border: 1px solid rgba(227, 234, 247, 0.32) !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    position: relative !important;
    z-index: 1 !important;
    box-sizing: border-box !important;
  }

  html body .footer > .item.mobile-footer-contact-bottom::before,
  html body .footer .list > .item.mobile-footer-contact-bottom::before {
    top: -8px !important;
    left: 12px !important;
    right: 12px !important;
    background: rgba(227, 234, 247, 0.28) !important;
  }

  html body .footer > .item.mobile-footer-contact-bottom > .flex_al,
  html body .footer .list > .item.mobile-footer-contact-bottom > .flex_al {
    margin: 0 !important;
    padding: 10px !important;
    border-radius: 10px !important;
    background: rgba(255, 255, 255, 0.05) !important;
    min-height: 0 !important;
  }

  html body .footer > .item.mobile-footer-contact-bottom > .flex_al + .flex_al,
  html body .footer .list > .item.mobile-footer-contact-bottom > .flex_al + .flex_al {
    margin-top: 8px !important;
  }

  html body .footer > .item.mobile-footer-contact-bottom .menu-children-list .mintitle,
  html body .footer .list > .item.mobile-footer-contact-bottom .menu-children-list .mintitle {
    margin: 0 0 3px !important;
  }

  html body .footer > .item.mobile-footer-contact-bottom .mobile-hotline-line,
  html body .footer > .item.mobile-footer-contact-bottom .menu-children-list span,
  html body .footer .list > .item.mobile-footer-contact-bottom .mobile-hotline-line,
  html body .footer .list > .item.mobile-footer-contact-bottom .menu-children-list span {
    margin: 0 !important;
    line-height: 1.55 !important;
  }
}

@media (max-width: 576px) {
  html body .footer .footIcon .bottom_title,
  html body .footer .list .footIcon .bottom_title {
    padding: 10px !important;
    line-height: 1.78 !important;
  }

  html body .footer > .item.mobile-footer-contact-bottom,
  html body .footer .list > .item.mobile-footer-contact-bottom {
    margin: 12px 10px 0 !important;
    padding: 9px !important;
    gap: 6px !important;
  }

  html body .footer > .item.mobile-footer-contact-bottom > .flex_al,
  html body .footer .list > .item.mobile-footer-contact-bottom > .flex_al {
    padding: 9px !important;
  }
}

/* Type section hard rescue: prevent blank block and force visible engineering image on mobile */
@media (max-width: 768px) {
  html body #index_type {
    min-height: 0 !important;
    margin-bottom: 10px !important;
    padding-bottom: 12px !important;
  }

  html body #index_type .container-fluid.box {
    min-height: 0 !important;
    margin: 0 !important;
    padding-bottom: 0 !important;
  }

  html body #index_type .right,
  html body #index_type .right > div,
  html body #index_type .right > a {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    min-height: 0 !important;
  }

  html body #index_type:not(.type-carousel-ready) .left_img {
    display: block !important;
    width: 100% !important;
    max-height: 260px !important;
    height: auto !important;
    object-fit: cover !important;
    margin: 6px 0 10px !important;
    border-radius: 12px !important;
  }

  html body #index_type .type-visual-container,
  html body #index_type .type-visual-container .type-visual-wrapper,
  html body #index_type .type-visual-container .swiper-slide {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    min-height: 0 !important;
  }

  html body #index_type .type-visual-container {
    margin: 6px 0 8px !important;
  }
}

/* Elegant section hard rescue: prevent .list_width from becoming a huge vertical stack */
@media (max-width: 768px) {
  html body #index_elegant .list_width {
    display: block !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  html body #index_elegant .elegant-container {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
  }

  html body #index_elegant .elegant-container .swiper-wrapper,
  html body #index_elegant .elegant-container .swiper-wrapper.listImg {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  html body #index_elegant .elegant-container .swiper-slide {
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  html body #index_elegant .elegant-container:not(.swiper-container-initialized) .swiper-slide {
    width: 82% !important;
    flex: 0 0 82% !important;
  }
}

/* Honor section hard rescue: force horizontal wrapper and prevent giant container height */
@media (max-width: 768px) {
  html body #index_honor .honor-container {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  html body #index_honor .honor-container .swiper-wrapper,
  html body #index_honor .honor-container .swiper-wrapper.listImg {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  html body #index_honor .honor-container .swiper-slide {
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  html body #index_honor .honor-container:not(.swiper-container-initialized) .swiper-slide {
    width: 82% !important;
    flex: 0 0 82% !important;
  }
}

/* News section hard rescue: force horizontal wrapper and prevent giant container height */
@media (max-width: 768px) {
  html body #index_news .news-container,
  html body #index_news .list .right.news-container {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  html body #index_news .news-container .swiper-wrapper,
  html body #index_news .list .right.news-container .swiper-wrapper,
  html body #index_news .news-container .swiper-wrapper.listImg,
  html body #index_news .list .right.news-container .swiper-wrapper.listImg {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  html body #index_news .news-container .swiper-slide,
  html body #index_news .list .right.news-container .swiper-slide {
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  html body #index_news .news-container:not(.swiper-container-initialized) .swiper-slide,
  html body #index_news .list .right.news-container:not(.swiper-container-initialized) .swiper-slide {
    width: 82% !important;
    flex: 0 0 82% !important;
  }
}
