@charset "utf-8";
/* CSS Document */
/*all*/

/* =============== 全局断点设置 =============== */

/* 1800px 断点 - 超大屏幕 */
@media screen and (max-width: 1800px) {
    /* 布局调整 */
    
    
    /* 横幅区域 */
    .banner .swiper-slide {
        height: 85rem;
    }
}

/* 1700px 断点 - 大屏幕 */
@media screen and (max-width: 1700px) {


    /* 布局调整 */
    .warp {
        padding: 0 50px;
        max-width: 100%;
    }

    .ip2_left .text1 {
        padding-left: 50px;
    }
    .ip2_right {
        padding-right: 50px; 
    }
    
    
    
}

/* 1600px 断点 - 大屏幕 */
@media screen and (max-width: 1600px) {
    /* 导航菜单调整 */
    .mune_index{
        margin-right: 40px;
        padding-right: 40px;
    }
    .header nav {
        grid-gap: 40px;
        
    }
}


/* 1500px 断点 - 中大屏幕 */
@media screen and (max-width: 1500px) {

    
    /* 布局调整 */
    .warp,
    .warp2 {
        padding: 0 50px;
    }
    
    /* 页脚文本区域调整 */
    .fo_txt{
        width: 45%;
    }
    
    
}

/* 1400px 断点 - 中屏幕 */
@media screen and (max-width: 1400px) {
    /* 文字大小参数调整 */
    :root {
        --font-size-xs: 1.4rem; /* 超小字体 */
        --font-size-sm: 1.6rem; /* 小字体 */
        --font-size-md: 1.8rem; /* 中等字体 */
        --font-size-ms: 2rem; /* 中等字体 */
        --font-size-lg: 2.2rem; /* 大字体 */
        --font-size-lx: 2.8rem; /* 大字体 */
        --font-size-x: 3.2rem; /* 超大字体 */
        --font-size-xl: 4.2rem; /* 超大字体 */
        --font-size-xxl: 5.4rem; /* 特大字体 */
        --font-size-xxlx: 6.4rem; /* 特大字体 */
        --font-size-xxxl: 10rem; /* 特大字体 */
    }

    /* 布局调整 */
    .warp,.warp2{
        padding: 0 40px;
    }

    /* 横幅区域调整 */
    .banner .swiper-slide {
        height: 75rem;
    }
    .ban1 .txt{
        padding-bottom: 140px;
    }
    
    /* 导航菜单调整 */
    .header .head_con p{
        display: none;
    }
    .header .head_con img{
        padding-right: 15px;
    }
    
    /* 页脚调整 */
    .fo2 .warp .fo_tel{
        display: none;
    }
    .fo2 .warp .fo_nav nav{
        margin: 0 20px;
    }
}
/* 1300px 断点 - 中屏幕 */
@media screen and (max-width: 1300px) {
    /* 导航菜单调整 */
    .mune_index{
        display: none;
    }
    
    /* Logo调整 */
    .header .logo {
        width: 270px;
        height: 100px;
        
    }
    
    /* Logo底部装饰条调整 */
    .header .logo::after {
        bottom: -20px;
        height: 20px;
    }
}

/* 1200px 断点 - 中屏幕 */
@media screen and (max-width: 1200px) {
    /* 文字大小参数调整 */
    :root {
        --font-size-xs: 1.4rem; /* 超小字体 */
        --font-size-sm: 1.6rem; /* 小字体 */
        --font-size-md: 1.8rem; /* 中等字体 */
        --font-size-ms: 2rem; /* 中等字体 */
        --font-size-lg: 2.2rem; /* 大字体 */
        --font-size-lx: 2.8rem; /* 大字体 */
        --font-size-x: 3.2rem; /* 超大字体 */
        --font-size-xl: 4.2rem; /* 超大字体 */
        --font-size-xxl: 5rem; /* 特大字体 */
        --font-size-xxlx: 6rem; /* 特大字体 */
        --font-size-xxxl: 8rem; /* 特大字体 */
    }
    
    /* 布局调整 */
    .warp,.warp2 {
        padding: 0 30px;
    }

    /* 导航菜单调整 */
    .header nav {
        grid-gap: 35px;
    }

    /* 横幅区域调整 */
    .banner .swiper-slide {
        height: 70rem;
    }
    .ban1 .txt{
        padding-bottom: 100px;
    }
}

/* 1000px 断点 - 小屏幕/平板 */
@media screen and (max-width: 1000px) {
    /* 移动端显示控制 */
    #hamburger { display: block !important; } /* 显示汉堡菜单 */
    .header .mune, .header .head_con,.header .logo::after { display: none; } /* 隐藏桌面导航 */
    
    /* 文字大小参数调整 */
    :root {
        --font-size-md: 1.6rem; /* 中等字体 */
        --font-size-ms: 1.8rem; /* 中等字体 */
        --font-size-lg: 2rem; /* 大字体 */
        --font-size-lx: 2.8rem; /* 大字体 */
        --font-size-x: 3rem; /* 超大字体 */
        --font-size-xl: 3.8rem; /* 超大字体 */
        --font-size-xxl: 4.6rem; /* 特大字体 */
        --font-size-xxlx: 5.6rem; /* 特大字体 */
        --font-size-xxxl: 7.6rem; /* 特大字体 */
    }
    
    /* Logo调整 */
    .header .logo{
        align-items: center;
        padding: 10px ;
        height: auto;
        width: 190px;
    }

    /* 横幅区域调整 */
    .banner .swiper-slide {
        height: 65rem;
    }
    .ban1 .txt{
        padding-bottom: 90px;
    }

    /* 页脚表单调整 */
    .fo1 .warp .fo1-box{
        flex-wrap: wrap;
    }
    .fo_txt,.foot_form  {
        width: 100%;
    }
    .foot_form{
        margin-top: 35px;
    }
    
    /* 布局组件调整 */
    .footer{
        margin-bottom: 51px;
    } 
    .bottomlist { display: block; } /* 显示底部导航 */
}

/* 840px 断点 - 小屏幕 */
@media screen and (max-width: 840px) {
    /* 横幅分页调整 */
    .banner .swiper-horizontal>.swiper-pagination-bullets, .banner .swiper-pagination-bullets.swiper-pagination-horizontal, .banner .swiper-pagination-custom, .banner .swiper-pagination-fraction {
        bottom: var(--swiper-pagination-bottom,30px);
    }
    
    /* 横幅文本调整 */
    .ban1 .txt h2{ 
        margin-bottom: 50px;
    }
    .ban1 .txt h3{ 
        margin-bottom: 20px;
    }
    .ban1 .txt p{ 
        margin-bottom: 35px;
    }
    
    /* 布局调整 */
    .warp,
    .warp2 {
        padding: 0 30px;
    }
    
    /* 横幅区域调整 */
    .banner .swiper-slide {
        height: 60rem;
    }
    .ban1 .txt{
        padding-bottom: 85px;
    }

    /* 页脚区域调整 */
    .footer{
        padding-top: 50px;
    }
    .fo_right{
        width: 100%;
        margin-top: 50px;
    }
    .fo1 .warp .fo1-box{
        padding-bottom: 50px;
    }
    .fo2 .warp .fo2-box{
        padding-top: 50px;
    }
}

/* 640px 断点 - 移动设备 */
@media screen and (max-width: 640px) {
    /* 排版系统调整 */
    :root {
        --font-size-md: 1.6rem; /* 中等字体 */
        --font-size-ms: 1.8rem; /* 中等字体 */
        --font-size-lg: 2rem; /* 大字体 */
        --font-size-lx: 2.4rem; /* 大字体 */
        --font-size-x: 2.6rem; /* 超大字体 */
        --font-size-xl: 3.6rem; /* 超大字体 */
        --font-size-xxl: 4.2rem; /* 特大字体 */
        --font-size-xxlx: 5.2rem; /* 特大字体 */
        --font-size-xxxl: 6.8rem; /* 特大字体 */
    }
    
    /* 布局调整 */
    .warp,
    .warp2 {
        padding: 0 30px;
    }

    /* 横幅区域调整 */
    .banner .swiper-slide {
        height: 50rem;
    }
}

/* 480px 断点 - 小屏移动设备 */
@media screen and (max-width: 480px) {
    /* 文字大小参数调整 */
    :root {
        --font-size-md: 1.6rem; /* 中等字体 */
        --font-size-ms: 1.8rem; /* 中等字体 */
        --font-size-lg: 2rem; /* 大字体 */
        --font-size-lx: 2.2rem; /* 大字体 */
        --font-size-x: 2.4rem; /* 超大字体 */
        --font-size-xl: 3.2rem; /* 超大字体 */
        --font-size-xxl: 3.6rem; /* 特大字体 */
        --font-size-xxlx: 4rem; /* 特大字体 */
        --font-size-xxxl: 6rem; /* 特大字体 */
    }
    
    /* 布局调整 */
    .warp,
    .warp2 {
        padding: 0 20px;
    }

    /* 横幅区域调整 */
    .banner .swiper-slide {
        height: 45rem;
    }
    .ban1 .txt {
        padding-bottom: 50px;
    }

    /* 页脚调整 */
    .foot_form,.fo2 .warp .fo_nav,.fo2 .warp .fo_code {
        display: none;
    }

    .fo_right {
        width: 100%;
        margin-top: 30px;
    }
    .fo_copy {
        padding-top: 20px;
        border-top: 1px solid #666;
    }

    .fo2 .warp .fo2-box {
        padding-top: 40px;
    }
    .fo_right {
        width: 100%;
        margin-top: 40px;
    }
}

/* =============== 移动端优先断点 =============== */
/* 375px断点保留作为扩展点 */
@media screen and (max-width: 400px) {

    :root {
        --font-size-md: 1.6rem; /* 中等字体 */
        --font-size-ms: 1.6rem; /* 中等字体 */
        --font-size-lg: 1.6rem; /* 大字体 */
        --font-size-lx: 2.2rem; /* 大字体 */
        --font-size-x: 2.2rem; /* 超大字体 */
        --font-size-xl: 2.6rem; /* 超大字体 */
        --font-size-xxl: 3.2rem; /* 特大字体 */
        --font-size-xxlx: 3.6rem; /* 特大字体 */
        --font-size-xxxl: 5rem; /* 特大字体 */
    }
    /* 可在此添加超小屏幕样式 */
    .banner .swiper-slide {
        height: 40rem;
    }
}


/*首页*/

@media screen and (max-width: 1800px) {
    
}

@media screen and (max-width: 1700px) {
   
}

@media screen and (max-width: 1600px) {
    
    .ip4_left{
        width: 450px;
    }
    .ip4_right{
        width: calc(100% - 550px);
    }
    
}
@media screen and (max-width: 1500px) {
    
    
}
@media screen and (max-width: 1400px) {
    
    .ip2_left {
        width: 43%;
    }
    .ip2_left .text1 .text_box i{
        font-size: 80px;
    }
    .ip2_left .text2 .text_box i {
        font-size: 50px;
    }
    .ip2_left .text1 .text_box p,.ip2_left .text2 .text_box p {
        font-size: 32px;

    }
    
    .ip2_right{
        width: calc(57% - 80px);
    }
    .ip2_left .text1 {
        padding-left: 40px;
    }
    
    .ip4_left .item{
        padding-top: 30px;
    }
    .ip4_left .item:first-child{
        padding-top: 10px;
    }

}
@media screen and (max-width: 1300px) {
    
    
        
}
@media screen and (max-width: 1200px) {
    .ip1,.ip3 {
        padding: 80px 0;
    }
    .ip2_left {
        width: 45%;
    }
    .ip2_right{
        width: calc(55% - 80px);
    }
    
    .ip3_box {
        grid-template-columns: repeat(2, 1fr);
    }

    .ip3_box .item:nth-child(1),.ip3_box .item:nth-child(3) { grid-row: span 2; } /* 占2行 */
    .ip3_box .item:nth-child(2) { grid-column: span 2;} /* 占2列 */

    .item_idx01{
        order: 1;
    }
    .item_idx02{
        order: 3;
    }
    .item_idx03{
        order: 2;
    }
    .item_idx04{
        order: 4;
    }
    .item_idx05{
        order: 5;
    }

    .ip4_box {
        
        padding: 40px 0;
    }
    .ip4_left,.ip4_right{
        width: 100%;
    }
    .ip4_left{
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        grid-gap: 30px;
        padding-bottom:40px;
    }
    .ip4_left .item{
        padding-right: 0;
        padding-top: 10px;
    }

    .ip1 .box .item .txt .txt_box .dot {
        display: grid;
        grid-template-columns: 20% 60% 20%;
        align-items: center;
        margin-bottom: 20px;
    }
    
}
@media screen and (max-width: 1100px) {
    .ip2_left {
        width:50%;
    }
    .ip2_right{
        width: calc(50% - 60px);
    }
}
@media screen and (max-width: 1000px) {
    
    .ip1,.ip3,.ip5 {
        padding: 60px 0;
    }
    .ip1 .tit{
        padding-top: 30px;
        background-size: 90%;
    }
    .ip1 .box {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        grid-gap: 40px;
    }
    .ip1 .box .item img{
        width: 100%;
    }
    .ip2{
        justify-content: center;
    }
    
    .ip2_left {
        width: 70%;
    }
    .ip2_right{
        width:70%;
        padding-right: 0;
    }
    .ip2_right .link {
        text-align: center;
    }
    .ip2_left .text1 .text_box i{
        font-size: 70px;
    }
    .ip2_left .text2 .text_box i {
        font-size: 40px;
    }
    .ip2_left .text1 .text_box p,.ip2_left .text2 .text_box p {
        font-size: 26px;
    }
    .ip3 .tit{
        padding-top: 30px;
        background-size: 60%;
    }

    .ip4_left{
        display: grid;
        grid-template-columns:1fr;
        grid-gap: 30px;
        padding-bottom:40px;
    }
    .ip4 {
        padding: 60px 0 30px 0;
    }
}
@media screen and (max-width: 840px) {

    .ip1 .box {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        grid-gap: 27px;
        margin-top: 50px;
    }
    .idx_title .adv {
        padding-top: 30px; 
    }
    .ip2_left {
        width: 80%;
    }
    .ip2_right{
        width:80%;
    }

    .ip3_box {
        
        padding-top: 50px;
    }

    .ip5_right .item  img{
        width: 100%;
    }
    
    
}

@media screen and (max-width: 640px) {
    .ip1, .ip3, .ip5 {
        padding: 40px 0;
    }
    .ip2{
        height: auto;
    }
    .ip2_left {
        width: 90%;
    }
    .ip2_right{
        width:90%;
    }
    .ip2_left .text1 .text_box i{
        font-size: 60px;
    }
    .ip2_left .text2 .text_box i {
        font-size: 36px;
    }
    .ip2_left .text1{
        margin-bottom: 0;
    }
    .ip3_box{
        grid-auto-rows: 260px; 
    }
    .ip4{
        padding: 60px 0  20px 0;
    }
  
    .ip5_box{
        padding-top: 30px;
    }
    .ip5_left,.ip5_right{
        width: 100%;
    }
    .ip5_right{
        padding-left: 0;
        padding-top: 10px;
    }
    
    .ip5_left{
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        grid-gap: 50px;
    }
    

    
}
@media screen and (max-width: 480px) {
    .ip1 .box {
        display: grid;
        grid-template-columns: repeat(1, 1fr);
        grid-gap: 27px;
    }
    .idx_title .tit h3 strong{
        font-size: 1.2em;
    }

    .ip3_box {
        grid-template-columns: 1fr;
    }
    .ip3_box .item:nth-child(1), .ip3_box .item:nth-child(3) {
        grid-row: span 1;
    }
    .ip3_box .item:nth-child(2) {
        grid-column: span 1;
    }

    .ip4_box {
        padding: 20px 0 40px 0;
    }

    
}
@media screen and (max-width: 400px) {
    
    .ip2_left .text2 .text_box {
        padding-right: 20px;
    }
    
}

/*about*/

@media screen and (max-width: 1800px) {
    
}

@media screen and (max-width: 1700px) {
   
}

@media screen and (max-width: 1600px) {
    
    
    
}
@media screen and (max-width: 1500px) {
    
    
}
@media screen and (max-width: 1400px) {
    
    

}
@media screen and (max-width: 1300px) {
    .banners{
        height: 600px;
    }
    
        
}
@media screen and (max-width: 1200px) {
    .ab2 .item{
        padding-right: 60px;
        margin-bottom: 40px;
    }
    .ab2 .item:last-child{
        padding-right: 0;
        
    }
    .ab1 .warp2 .ab1_left{
        width: 400px;
    }
    .ab1 .warp2 .ab1_right{
        width: calc(100% - 400px);
    }

    .ab1 .warp2 .ab1_left .info {
        margin-bottom: 55px;
    }
    .ab4_box2 .ab4_left {
        width: 76%;
    }
}
@media screen and (max-width: 1100px) {
    
}
@media screen and (max-width: 1000px) {
    .banners {
        height: 550px;
    }

    .ab1{
        padding: 20px 0;
    }
    .ab1 .warp2 .ab1_left {
        width: 375px;
    }
    .ab1 .warp2 .ab1_right {
        width: calc(100% - 380px);
    }
    .ab2 .item{
        margin-bottom: 40px;
    }
    .ab3{
        padding: 70px 0;
    }
    .ab5{
        height: 280px;
    }
    .ab6 {
        padding: 70px 0 40px 0;
        background-color: #ffffff;
    }
}
@media screen and (max-width: 840px) {
    .intit>*{
        width: 100%;
    }
    .intit h3 {
        padding-bottom: 20px;
        
    }
    .intit p{
        margin-top:15px;
    }
    .ab1{
        padding: 60px 0 0 0;
    }
    .ab1 .warp2 .ab1_right {
        width:100%;
    }
    .ab4_box{
        grid-template-columns: 1fr;
    }
    .ab4_box .ab4_right p{
        position: initial;
    }

    .ab4_box .ab4_left{
        order: 3;
    }
    
}

@media screen and (max-width: 640px) {

    
    .banners {
        height: 400px;
    }
    .banners .warp{
        padding-bottom: 80px;
    }
    .ab4_box2 .ab4_left {
        width: 100%;
    }
    .team {
        padding-bottom: 50px;
    }
    .team_btn {
        right: initial;
        left: 50%;
        transform: translateX(-50%);
        bottom: 28px;
        
    }
    .ab4_box2::after{
        left: 50px;
    }
    .ab4_box2 .ab4_left .txt {
        padding-left: 85px;
        padding-right: 50px;
    }

    .ab3 {
            padding: 50px 0;
        }
    .ab6 {
        padding: 50px 0 20px 0;
        background-color: #ffffff;
    }

}
@media screen and (max-width: 480px) {
    .banners {
        height: 360px;
    }

    .ab4_box .ab4_right {
        padding-top: 30px;
        padding-right: 25px;
        text-align: right;
    }
    
    
}
/*case*/
@media screen and (max-width: 1200px) {
    .case1,.con1,.service1 {
        padding: 70px 0;
    }
    .case_list {
        padding-top: 50px;
    }

    .caseshow .case_title {
        padding: 50px;
    }
}
@media screen and (max-width: 1000px) {
    .case1,.con1,.service1 {
        padding: 70px 0;
    }
    .caseshow {
        margin-top: 40px;
        
    }

}
@media screen and (max-width: 840px) {
    .casebox {
        grid-template-columns: repeat(2, 1fr);
    }
    .case_list a {
       
        margin-right: 15px;
        padding: 10px 15px;
        margin-bottom: 20px;
    }

    .case_footer {
        padding: 60px 0;
    }
    .case_more img{
        width: 60px;
    }
}

@media screen and (max-width: 640px) {
    .case1,.con1 {
        padding: 50px 0;
    }
    .case_list a {
        margin-bottom:10px;
    }
    .casebox {
        grid-template-columns: 1fr;
    }
    .casebox .item img{
        width: 100%;
    }

    .caseshow .case_title {
        padding: 30px;
    }


}

/*contact*/
@media screen   and (max-width: 1400px) {
    .con2 .item {
        padding:40px;
    }
}
@media screen and (max-width: 1200px) {
    .con_box form {
        gap: 60px;
    }

    .con_box {
        padding-top: 70px;
    }
    .con2 .warp {
        grid-template-columns: 1fr 1fr;
    }
    .con2 .item003{
        grid-column: 1/3;
        grid-row: auto;
        border-top: 0;
        border-bottom: 0;
        height: auto;
    }
    .con2 .item003{
        order: 5;
        border-top: 1px solid #fff;
    }
    /* .con2 .item .info .dot{
        width: 100%;
    }
    .con2 .item .info .dot:first-child{
        padding-bottom: 30px;
    }
    .con2 .item .info{
        padding-top: 30px;
    } */

    /* .con2 .item003{
        grid-column: 1 /3;
        grid-row: 2 / 3;
        border-top: 0;
        border-bottom: 0;
        height: auto;
    } */
}
@media screen and (max-width: 1000px){
    .con_box form {
        gap: 40px;
    }

    .con2 .item002, .con2 .item005 {
        border-right:1px solid #fff;
    }


}


@media screen and (max-width: 840px) {
    .con_box {
        padding-top: 50px;
    }
    .con_box form {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    .hide{
        display: block;
    }
    .show{
        display: none;
    }

    .con1_info p {
        margin-bottom: 40px;
    }
    .con1 .btn{
        margin-top: 10px;
    }
    .con2 .item .info .dot{
        width: 100%;
    }
    .con2 .item .info .dot:first-child{
        margin-bottom: 20px;
    }

    .con2 {
        padding: 70px 0;
    }
}

@media screen and (max-width: 640px) {
    .con2 {
        padding:50px 0;
    }
    .con2 .warp {
        grid-template-columns: 1fr;
    }
    .con2 .item003 {
        grid-column: 1/2;
        grid-row: auto;
        border-top: 0;
        border-bottom: 0;
        height: auto;
    }

    .con2 .item001, .con2 .item004 {
        border-right:1px solid #fff;
    }
    .con2 .item004, .con2 .item005 {
        border-bottom:1px solid #fff;
    }

    .con2 .item .info {
        padding-top: 30px;
    }
}

@media screen and (max-width: 480px) {
    .con2 .item {
        padding: 30px;
    }
}

/*news*/
@media screen and (max-width: 1200px) {
    .new_box .item a {
        grid-template-columns: 130px auto 300px;
        gap: 40px;
        
    }

}

@media screen and (max-width: 1000px) {
    .new_box .item a {
        display: flex;
        justify-content: flex-start;
        flex-wrap: wrap;
        
    }
    .new_box .img{
        order: 1;
    }
    .new_box .news02{
        
        width: 100%;
    }
    .new_box .news01{
        
        width: 100%;
    }
    .new_box .more{
        display: none;
    }

    .new_box .item a:hover {
        background: url(/static/images/news/news_bg.png) bottom 10% right 10% no-repeat, linear-gradient(to right, var(--primary-color), var(--secondary-color));
        border-radius: 15px;
    }
}

@media screen and (max-width: 480px) {
    .new_box .item a {
        
        padding: 30px
    }

    .new_box .item a:hover {
        background: url(/static/images/news/news_bg.png) bottom 15px right 10% no-repeat, linear-gradient(to right, var(--primary-color), var(--secondary-color));
    }
}


/*service*/
@media screen and (max-width: 1100px) {
    .server_list .server_left {
        width: 51%;  
    }
}

@media screen and (max-width: 1000px) {
    .server_list {
    padding-top: 60px;
}
    .server_list .server_left {
        width: 60%;  
    }
}

@media screen and (max-width: 840px) {
    .server_list {
    padding-top: 50px;
}
    .server_list .server_left {
        width: 100%;  
    }
    .server_list .item { 
        background-position: bottom right;
    }

    .server_list .server_right{
        display: block;
    }
}
@media screen and (max-width: 840px) {

    .server_list {
    padding-top: 40px;
}
    .server_list .server_left {
        width: 100%; 
        padding:30px
    }

    .info_left{
        width: 60%;
    }

    .info_right {
        width: 40%;
    }
    .ser_title{
        padding-bottom: 50px;
    }
    
}

@media screen and (max-width: 840px) {

    .server_list {
        padding-top: 30px;
    }

    .info_left{
        width: 70%;
    }

    .info_right {
        width: 30%;
    }
    
    
}
