/* 首页独有布局；公共头尾及其它页面继续使用 app_css.css。 */
body.seo-home {
    --home-width: min(1520px, calc(100% - 140px));
    --home-main-h: 600px;
    --home-row-h: calc((var(--home-main-h) - 10px) / 2);
}
@supports (height: clamp(490px, 50vh, 600px)) {
    body.seo-home {
        --home-main-h: clamp(490px, calc(100vh - 482px), 600px);
    }
}
body.seo-home .theme_bgimg > .con,
body.seo-home .pic_nav_con {
    width: calc(100% - 32px) !important;
    min-width: 1200px;
    max-width: var(--home-width);
}
body.seo-home .s_bs_toolbar_common { right: 0; }

/* 首页分类与两行四列主体。分类导航保留原有 hover 和服务器输出。 */
body.seo-home .pic_index_banner_warp,
body.seo-home .index_top { width: 100%; }
body.seo-home .pic_index_banner_warp { margin: 0 auto; }
body.seo-home .pic_index_banner_warp,
body.seo-home .index_top,
body.seo-home .pic_nav,
body.seo-home .pic_main_nav { height: var(--home-main-h) !important; }
body.seo-home .index_top_one { flex: 0 0 200px; width: 200px; margin-right: 10px; }
body.seo-home .index_top_two { flex: 405 1 0; width: auto; min-width: 0; margin-right: 10px; }
body.seo-home .index_top_three { flex: 283 1 0; width: auto; min-width: 0; margin-right: 10px; }
body.seo-home .index_top_four { flex: 283 1 0; width: auto; min-width: 0; }
body.seo-home .index_top_two_banner,
body.seo-home .index_top_three_mall,
body.seo-home .index_top_two_plan,
body.seo-home .index_top_three_class,
body.seo-home .index_top_four_top,
body.seo-home .index_top_four_equity {
    height: var(--home-row-h);
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0,0,0,.04), 0 4px 12px rgba(0,0,0,.03);
    overflow: hidden;
}
body.seo-home .index_top_two_banner,
body.seo-home .index_top_three_mall,
body.seo-home .index_top_two_plan,
body.seo-home .index_top_four_top { margin-bottom: 10px; }
body.seo-home .index_top_two_empty .index_top_two_banner { height: var(--home-main-h); margin-bottom: 0; }
body.seo-home .index_top_two_plan:hover,
body.seo-home .index_top_three_class:hover { box-shadow: 0 8px 24px rgba(0,92,169,.14); }
body.seo-home .index_top_two_banner .swiper,
body.seo-home .index_top_two_banner .swiper-wrapper,
body.seo-home .index_top_two_banner .swiper-slide { height: 100%; }
body.seo-home .index_top_two_banner .swiper-slide img { width: 100%; height: 100%; object-fit: cover; }
body.seo-home .index_top_tit > span:before {
    content: ''; position: absolute; left: -10px; top: 50%;
    width: 3px; height: 16px; margin-top: -8px;
    border-radius: 2px; background: var(--home-accent);
}
body.seo-home .pic_nav_warp { width: 100%; pointer-events: none; }
body.seo-home .pic_nav_con { width: 100% !important; max-width: none; min-width: 0; pointer-events: none; }
body.seo-home .pic_nav { position: static; width: 200px; pointer-events: auto; }
body.seo-home .pic_nav .pic_main_nav { position: static; }
body.seo-home .pic_nav .pic_sub_nav {
    left: 200px; width: calc(100% - 200px);
    height: auto; min-height: var(--home-main-h); box-sizing: border-box;
    border-radius: 0 10px 10px 0;
}
body.seo-home .pic_nav .pic_sub_nav_split { background: #fff !important; }
body.seo-home .pic_nav .pic_sub_nav_split .pic_sub_nav_mune_warp { min-height: var(--home-main-h); overflow: visible; align-items: stretch; }
body.seo-home .pic_nav .pic_sub_nav_mune_warp { height: auto; min-height: var(--home-main-h); background: #fff; }
body.seo-home .pic_nav .pic_sub_nav_split .pic_sub_nav_scroll_corner { overflow: hidden; flex: 1 1 786px; min-width: 0; border-radius: 0 10px 10px 0; }
body.seo-home .pic_nav .pic_sub_nav_split .pic_sub_nav_mune { width: 100%; height: auto; overflow-y: visible; }
body.seo-home .pic_nav .pic_sub_nav_split .index_brand { flex: 0 0 219px; box-sizing: border-box; width: 219px; min-width: 219px; overflow-y: auto; border-left: 5px solid #f2f2f2; }
body.seo-home .pic_nav .pic_sub_nav_split .pic_sub_nav_scroll_corner::before,
body.seo-home .pic_nav .pic_sub_nav_split .pic_sub_nav_scroll_corner::after { content: none; }
body.seo-home .pic_nav .pic_sub_nav_split .index_brand ul li { height: 58px; padding: 0 3px; }
body.seo-home .pic_nav .pic_sub_nav_split .index_brand ul li a { height: 54px; line-height: 54px; }
body.seo-home .pic_nav .pic_sub_nav_split .index_brand ul li img { object-fit: contain; }
body.seo-home .pic_nav .pic_sub_nav_split .index_brand ul li span { display: block; overflow: hidden; text-overflow: ellipsis; color: var(--home-accent); }
body.seo-home .pic_nav .pic_sub_nav_split .brand_item_border { display: none; }
body.seo-home .pic_nav .li_con { margin: 6px 0; }
body.seo-home .pic_nav .li_con .list_title {
    display: flex; align-items: flex-start; justify-content: flex-end;
    flex: none; box-sizing: border-box; min-width: 200px;
    margin-right: 10px; padding-left: 20px; font-weight: normal; text-align: right;
}
body.seo-home .pic_nav .li_con .list_title em { margin-left: 6px; }
body.seo-home .pic_nav .li_con .index_sub_links { flex: 1; min-width: 0; }
body.seo-home .pic_nav .li_con .list_con { margin-right: 0; color: #ccc; }
body.seo-home .pic_nav .li_con .list_con a { padding: 0 8px; }
body.seo-home .pic_nav .pic_main_nav > li { border-bottom: 0; border-radius: 8px; margin: 2px 6px; }
body.seo-home .pic_nav .pic_main_nav > li:hover { background: #f0f5fa; }
body.seo-home .pic_nav .pic_main_nav > li:first-child,
body.seo-home .pic_nav .pic_main_nav > li:last-child,
body.seo-home .pic_nav .pic_main_nav > li:first-child:hover,
body.seo-home .pic_nav .pic_main_nav > li:last-child:hover { border-radius: 8px; }
body.seo-home .pic_nav .pic_main_nav { border-radius: 10px; border: 0; }
body.seo-home .pic_main_nav_c_l { border-radius: 2px; margin-left: 2px; }
body.seo-home .pic_home_nav .pic_main_nav > li > a span {
    box-sizing: border-box; padding-left: 16px; text-align: left;
}
body.seo-home .pic_home_nav .pic_main_nav > li .pic_sub_nav {
    display: none !important; border: 1px solid var(--home-accent);
    border-radius: 10px; top: -1px;
}
body.seo-home .pic_home_nav .pic_main_nav > li.pic_open .pic_sub_nav { display: block !important; }
body.seo-home .pic_home_nav .pic_main_nav > li.pic_open {
    background: #f0f5fa;
}
body.seo-home .pic_home_nav .pic_main_nav > li.pic_open .pic_main_nav_c_l {
    background: var(--home-accent);
}
body.seo-home .pic_home_nav .pic_main_nav > li.pic_open > a span {
    color: var(--home-accent) !important; font-weight: bold;
}
body.seo-home .pic_home_nav .pic_main_nav > li {
    flex: none; box-sizing: border-box;
    height: calc(var(--home-main-h) / var(--home-visible-count) - 4px);
}
body.seo-home .pic_home_nav .pic_nav.nav-more:not(:hover) .pic_main_nav > li:nth-child(n + 16) { display: none; }
body.seo-home .pic_home_nav .pic_nav.nav-more:hover,
body.seo-home .pic_home_nav .pic_nav.nav-more:hover .pic_main_nav { height: auto !important; }
body.seo-home .pic_home_nav .pic_nav.nav-more:hover .pic_main_nav {
    box-shadow: 0 8px 24px rgba(0, 92, 169, .24);
    border-radius: 10px;
}
body.seo-home .index_supplier_list,
body.seo-home .index_class_list,
body.seo-home .index_top_sale_box {
    height: calc(100% - 45px);
    box-sizing: border-box;
    display: grid;
    align-content: space-evenly;
    padding: 3px 12px 10px;
    gap: 6px 10px;
    margin-top: 0;
}
body.seo-home .index_supplier_list,
body.seo-home .index_class_list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
body.seo-home .index_top_sale_box { grid-template-columns: repeat(4, minmax(0, 1fr)); }
body.seo-home .index_supplier_list > a,
body.seo-home .index_class_list > a,
body.seo-home .index_top_sale_box > a { min-width: 0; }
body.seo-home .index_supplier_item {
    width: auto; height: 38px; margin: 0; padding: 0 6px;
    box-sizing: border-box; display: flex; align-items: center; justify-content: center;
    border-radius: 6px; background: #fafbfc;
}
body.seo-home .index_supplier_item img { width: auto; height: auto; max-width: 100%; max-height: 100%; object-fit: contain; }
body.seo-home .index_supplier_item span { line-height: 18px; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
body.seo-home .index_class_item,
body.seo-home .index_top_sale_item { width: auto; margin: 2px 0 0; min-width: 0; }
body.seo-home .index_class_img,
body.seo-home .index_top_sale_pro_img { width: 100%; height: 60px; display: flex; align-items: center; justify-content: center; }
body.seo-home .index_class_img img,
body.seo-home .index_top_sale_pro_img img { width: auto; height: auto; max-width: 100%; max-height: 60px; object-fit: contain; }
body.seo-home .index_class_tit { width: 100%; margin-top: 8px; color: #666; font-size: 13px; text-align: center; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
body.seo-home .index_top_sale_pro_tit { margin-top: 8px; }
body.seo-home .index_vip_box { padding: 12px 10px 8px; height: auto; }
body.seo-home .index_head_info .index_login_box { height: 110px; }
body.seo-home .index_head_info .index_span_btn { margin-top: 10px; }
body.seo-home .index_head_info .index_top_service { padding: 17px 10px 0; }
body.seo-home .index_head_info .index_top_service_item { margin-top: 4px; }
body.seo-home .index_head_info .index_top_service_icon { height: 36px; line-height: 36px; }
body.seo-home .index_head_info .index_top_service_tit { margin-top: 2px; }
body.seo-home .member_benefits {
    display: grid; grid-template-columns: repeat(4, minmax(0, 1fr));
    padding: 4px 10px; box-sizing: border-box;
}
body.seo-home .member_benefits_item { margin: 6px 0 4px; min-width: 0; text-align: center; }
body.seo-home .member_benefits_img { width: 38px; height: 38px; padding: 8px; }
body.seo-home .member_benefits_tit { margin: 12px auto 0; }
body.seo-home .product_list { width: 100%; display: grid; grid-template-columns: repeat(auto-fit, minmax(232px, 1fr)); gap: 10px; }
body.seo-home .product_list > li { width: auto; margin: 0; min-height: 290px; }
body.seo-home .product_list .product_img { width: 150px; height: 150px; margin: 20px auto 12px; }
body.seo-home .product_list .product_img img { max-width: 100%; max-height: 100%; object-fit: contain; }
body.seo-home .product_list .product_item_com { margin-top: 18px; }
body.seo-home .jump_class_link { padding-left: 220px; }

/* 首页沿用公共页脚宽度，只保留首页独有的装饰与子项布局。 */
body.seo-home .company_value { padding: 30px 40px; background: #f2f2f2; border-radius: 12px 12px 0 0; }
body.seo-home .company_value .company_one { width: auto; flex: 0 1 240px; margin-left: 0; }
body.seo-home .web_introduction_con { background: #e3e4e5; }
body.seo-home .web_introduction { padding-right: 10px; }
body.seo-home .web_introduction .settlement_guide { max-width: 500px; }
body.seo-home .footer { background: #4d4d4d; }
body.seo-home .footer_con { box-sizing: border-box; }
@media (max-width: 1360px) {
    body.seo-home { --home-width: 1200px; }
}
