﻿/**
 * 文件描述：ZStack 密评解决方案页样式，复刻自 https://www.zstack.io/thesolution/cryptographic_application/
 * Hero 已对齐产品页 .hero 结构（样式来自 main.css → index.css）
 */

.hero .btn-primary .svg_span svg.hero-phone-icon {
    transform: none;
}

.hero{
    padding-bottom: 0;
    margin-bottom: 0;
}

.header_btn_collection{
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}
.header_btn_collection .call{
    width: 128px;
    height: 40px;
    background: #FFFFFF;
    border-radius: 2px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    transition: all .3s linear;
}
.header_btn_collection .call:hover{
    transform: translateY(-5px);
    cursor: pointer;
}
.header_btn_collection .call .btn_text{
    font-size: 16px;
    font-family: PingFangSC-Regular, PingFang SC;
    font-weight: 400;
    color: #007FDF;
    line-height: 32px;
}
.header_btn_collection .download{
    width: 128px;
    height: 40px;
    border-radius: 2px;
    border: 1px solid #FFFFFF;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.header_btn_collection .download .btn_text{
    font-size: 14px;
    font-family: PingFangSC-Regular, PingFang SC;
    font-weight: 400;
    color: #FFFFFF;
    line-height: 20px;
}
.why_do_container{
    width: 100%;
    margin: 0 auto;
    padding: clamp(64px, 6vw, 100px) 24px clamp(72px, 7vw, 120px);
    box-sizing: border-box;
    background: linear-gradient(180deg, #EAF4FC 0%, #F7FBFE 45%, #FFFFFF 100%);
}
.why_do_container .why_do{
    width: 100%;
    max-width: 1080px;
    margin: 0 auto;
}
.why_do_container .why_do .title{
    font-size: clamp(28px, 2.5vw, 36px);
    font-family: PingFangSC-Medium, PingFang SC, sans-serif;
    font-weight: 600;
    color: #1A2736;
    line-height: 1.4;
    text-align: center;
    margin-bottom: clamp(40px, 4vw, 64px);
}
.why_do_container .reason_list{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(16px, 2vw, 24px);
}
.why_do_container .reason_list .reason_item{
    position: relative;
    border-radius: var(--r8);
    padding: clamp(28px, 3vw, 50px) clamp(24px, 2.5vw, 46px);
    box-sizing: border-box;
    display: flex;
    align-items: center;
    overflow: hidden;
    background: linear-gradient(180deg, #FFFFFF 0%, #e4eef7 100%);
    box-shadow: 0 8px 24px rgba(17, 83, 145, 0.06);
    transition:
        transform 0.3s cubic-bezier(0.22, 1, 0.36, 1),
        background 0.3s linear,
        box-shadow 0.3s linear;
}
.why_do_container .reason_list .reason_item::before{
    content: '';
    position: absolute;
    inset: 0;
    opacity: 0.4;
    background-image:
        linear-gradient(rgba(17, 83, 145, 0.08) 1px, transparent 1px),
        linear-gradient(90deg, rgba(17, 83, 145, 0.08) 1px, transparent 1px);
    background-size: 28px 28px;
    pointer-events: none;
    transition: opacity 0.3s linear, background-image 0.3s linear;
}
.why_do_container .reason_list .reason_item::after{
    content: '';
    position: absolute;
    right: -12px;
    bottom: -28px;
    width: 180px;
    height: 140px;
    background: url(/static/skin/images/solution/confidential_review/blcok-1-bg-icon.webp) no-repeat right bottom / contain;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s linear;
}
.why_do_container .reason_list .reason_text{
    position: relative;
    z-index: 1;
    margin: 0;
    font-size: 16px;
    font-family: PingFangSC-Regular, PingFang SC, sans-serif;
    font-weight: 400;
    color: #3D4A5C;
    line-height: 1.75;
    transition: color 0.3s linear;
}
.why_do_container .reason_list .reason_item:hover{
    transform: translateY(-6px);
    background: linear-gradient(253deg, #023d73 1%, #02569b 66%, #014a86 99%);
    box-shadow: 0 12px 28px rgba(17, 83, 145, 0.18);
}
.why_do_container .reason_list .reason_item:hover::before{
    opacity: 0.14;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.2) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.2) 1px, transparent 1px);
}
.why_do_container .reason_list .reason_item:hover::after{
    opacity: 0.55;
}
.why_do_container .reason_list .reason_item:hover .reason_text{
    color: #fff;
}
@media (prefers-reduced-motion: reduce) {
    .why_do_container .reason_list .reason_item{
        transition: none;
    }
    .why_do_container .reason_list .reason_item:hover{
        transform: none;
    }
}
.risk_analysis_container{
    width: 100%;
    margin: 0 auto;
    padding: clamp(72px, 7vw, 117px) 24px clamp(72px, 7vw, 117px);
    box-sizing: border-box;
    background: #f8fafc;
}
.risk_analysis_container .risk_analysis{
    width: 100%;
    max-width: var(--container-max, 1440px);
    margin: 0 auto;
}
.risk_analysis_container .risk_analysis .title{
    font-size: clamp(28px, 2.5vw, 36px);
    font-family: PingFangSC-Medium, PingFang SC, sans-serif;
    font-weight: 600;
    color: #1A2736;
    line-height: 1.4;
    text-align: center;
    margin-bottom: clamp(36px, 4vw, 48px);
}
.risk_analysis .risk_list{
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(16px, 2vw, 24px);
}
.risk_analysis .risk_list .risk_item{
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    margin: 0;
    padding: clamp(28px, 2.5vw, 36px) clamp(20px, 2vw, 28px) clamp(28px, 2.5vw, 32px);
    border-radius: var(--r8, 8px);
    box-sizing: border-box;
    background: linear-gradient(122deg, #f8fafc 14%, #f7fafc00 90%), #FFFFFF;
    transition:
        transform 0.3s cubic-bezier(0.22, 1, 0.36, 1),
        box-shadow 0.3s linear,
        background 0.3s linear;
}
.risk_analysis .risk_list .risk_item:hover{
    transform: translateY(-6px);
    box-shadow: 0 12px 28px rgba(17, 83, 145, 0.12);
}
.risk_analysis .risk_icon_container{
    margin-bottom: 16px;
}
.risk_analysis .risk_icon_container .risk_icon{
    display: block;
    width: clamp(38px, 5vw, 44px);
    height: clamp(38px, 5vw, 44px);
    margin: 0 auto;
    object-fit: contain;
    background: none;
}
.risk_item .risk_content{
    width: 100%;
}
.risk_item .risk_content .risk_title{
    font-size: clamp(18px, 1.5vw, 20px);
    font-family: PingFangSC-Medium, PingFang SC, sans-serif;
    font-weight: 600;
    color: #1A2736;
    line-height: 1.4;
    margin-bottom: 10px;
}
.risk_item .risk_content .risk_desc{
    font-size: 14px;
    font-family: PingFangSC-Regular, PingFang SC, sans-serif;
    font-weight: 400;
    color: #5E6978;
    line-height: 1.75;
    margin: 0;
}
@media (prefers-reduced-motion: reduce) {
    .risk_analysis .risk_list .risk_item{
        transition: none;
    }
    .risk_analysis .risk_list .risk_item:hover{
        transform: none;
    }
}
.standard_container{
    background: #FFFFFF;
    padding: clamp(48px, 5vw, 80px) 24px clamp(64px, 6vw, 106px);
    box-sizing: border-box;
}
.standard_container .standard{
    width: 100%;
    max-width: 1440px;
    margin: 0 auto;
}
.standard_container .title{
    font-size: clamp(28px, 2.5vw, 36px);
    font-family: PingFangSC-Medium, PingFang SC, sans-serif;
    font-weight: 600;
    color: #1A2736;
    line-height: 1.4;
    margin-bottom: clamp(36px, 4vw, 53px);
    text-align: center;
}
.standard_container .standard_diagram{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
}
/* 密评标准图按 SVG 原始尺寸展示，窄屏再等比缩小 */
.standard_container .standard_diagram img{
    display: block;
    width: 1351px;
    max-width: 100%;
    height: auto;
}
.overall_process_container{
    padding: clamp(64px, 6vw, 110px) 24px clamp(72px, 7vw, 140px);
    box-sizing: border-box;
    background: #F8FAFC;
}
.overall_process_container .overall_process{
    width: 100%;
    max-width: 1440px;
    margin: 0 auto;
}
.overall_process_container .overall_process .title{
    font-size: clamp(28px, 2.5vw, 36px);
    font-family: PingFangSC-Medium, PingFang SC, sans-serif;
    font-weight: 600;
    color: #1A2736;
    line-height: 1.4;
    text-align: center;
    margin-bottom: clamp(40px, 4vw, 64px);
}
.overall_process .process_list{
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(16px, 2vw, 24px);
    align-items: stretch;
}
.overall_process .process_item{
    width: auto;
    margin: 0;
    display: flex;
    flex-direction: column;
    border-radius: var(--r8, 8px);
    background: linear-gradient(305deg, #f0f4f6 9%, #f7fafc00 85%), #FFFFFF;
    box-shadow: 0 8px 24px rgba(17, 83, 145, 0.06);
    transition:
        transform 0.3s cubic-bezier(0.22, 1, 0.36, 1),
        box-shadow 0.3s linear;
}
.overall_process .process_item:hover{
    transform: translateY(-4px);
    box-shadow: 0 12px 28px rgba(17, 83, 145, 0.12);
}
.overall_process .process_item .process_head{
    position: relative;
    width: 100%;
    height: auto;
    min-height: 72px;
    padding: 24px 28px 8px;
    box-sizing: border-box;
    background: rgba(199, 221, 245, 0.3);
    border-radius:var(--r8) var(--r8) 0 0;
    box-shadow: none;
}
.overall_process .process_head .process_title{
    position: relative;
    z-index: 1;
    top: auto;
    left: auto;
    margin: 0;
    font-size: clamp(20px, 1.6vw, 24px);
    font-family: PingFangSC-Semibold, PingFang SC, sans-serif;
    font-weight: 600;
    color: #115391;
    line-height: 1.4;
    transition: none;
}
.overall_process .process_head .process_num{
    position: absolute;
    top: -30px;
    right: -10px;
    font-size: clamp(64px, 6vw, 88px);
    font-style: italic;
    font-weight: 700;
    background: linear-gradient(180deg, #0b66b2 23%, #0b66b200 76%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-fill-color: transparent;
    line-height: 1;
    pointer-events: none;
    user-select: none;
    width:clamp(64px, 6vw, 88px) ;
}
.overall_process .process_item .process_body{
    width: 100%;
    flex: 1;
    margin: 0;
    padding: 28px;
    box-sizing: border-box;
    background: transparent;
    border-radius: 0;
    position: relative;
}
.overall_process .process_item .process_body .body_item{
    width: auto;
    height: auto;
    margin: 0 0 14px;
    padding: 0;
    background: transparent;
    border-radius: 0;
    display: flex;
    align-items: flex-start;
    gap: 10px;
}
.overall_process .process_item .process_body .body_item:last-child{
    margin-bottom: 0;
}
.overall_process .process_item .process_body .body_item::before{
    content: '';
    flex-shrink: 0;
    width: 18px;
    height: 18px;
    margin-top: 2px;
    background: url(/static/skin/images/solution/confidential_review/icon-gou.png) center / contain no-repeat;
}
.overall_process .process_item .process_body .body_item .body_text{
    margin: 0;
    font-size: 15px;
    font-family: PingFangSC-Regular, PingFang SC, sans-serif;
    font-weight: 400;
    color: #3D4A5C;
    line-height: 1.6;
}
@media (prefers-reduced-motion: reduce) {
    .overall_process .process_item{
        transition: none;
    }
    .overall_process .process_item:hover{
        transform: none;
    }
}
.panoramic_plan_container{
    background: #FFFFFF;
    padding: clamp(48px, 5vw, 80px) 24px clamp(64px, 6vw, 106px);
    box-sizing: border-box;
}
.panoramic_plan_container .panoramic_plan{
    width: 100%;
    max-width: 1440px;
    margin: 0 auto;
}
.panoramic_plan_container .panoramic_plan .title{
    font-size: clamp(28px, 2.5vw, 36px);
    font-family: PingFangSC-Medium, PingFang SC, sans-serif;
    font-weight: 600;
    color: #1A2736;
    line-height: 1.4;
    margin-bottom: clamp(36px, 4vw, 53px);
    text-align: center;
}
.panoramic_plan_container .panoramic_plan_diagram{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
}
/* 密评全景方案图按 SVG 原始尺寸展示，窄屏再等比缩小 */
.panoramic_plan_container .panoramic_plan_diagram img{
    display: block;
    width: 1440px;
    max-width: 100%;
    height: auto;
}
.solution_container{
    padding: clamp(64px, 6vw, 110px) 24px clamp(80px, 8vw, 140px);
    box-sizing: border-box;
    background: #f8fafc;
}
.solution_container .solution{
    width: 100%;
    max-width: 1440px;
    margin: 0 auto;
}
.solution_container .solution .title{
    font-size: clamp(28px, 2.5vw, 36px);
    font-family: PingFangSC-Medium, PingFang SC, sans-serif;
    font-weight: 600;
    color: #1A2736;
    line-height: 1.4;
    text-align: center;
    margin-bottom: clamp(28px, 3vw, 40px);
}
.solution_container .solution .solution_nav{
    display: flex;
    width: fit-content;
    max-width: 100%;
    margin: 0 auto;
    padding: 0;
    justify-content: center;
    align-items: flex-end;
    gap: clamp(32px, 4vw, 76px);
    background: transparent;
    border-radius: 0;
  
    box-sizing: border-box;
}
.solution_container .solution_nav .solution_nav_item{
    position: relative;
    display: inline-flex;
    width: auto;
    min-width: 0;
    height: auto;
    padding: 12px 68px;
    margin-bottom: -1px;
    background: transparent;
    border-radius: var(--r8);
    font-size: 16px;
    font-family: PingFangSC-Regular, PingFang SC, sans-serif;
    font-weight: 500;
    color: var(--primary-dec);
    line-height: 1;
    justify-content: center;
    align-items: center;
    gap: 8px;
    transition: background 0.25s linear, color 0.25s linear;
    box-sizing: border-box;
    border-bottom: 2px solid #E5E7EB;
}
.solution_container .solution_nav .solution_nav_item::before{
    content: '';
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #C0C6D0;
    flex-shrink: 0;
}
.solution_container .solution_nav .solution_nav_item.active{
    background: #115391;
    color: #FFFFFF;
    transform: none;
    z-index: 1;
}
.solution_container .solution_nav .solution_nav_item.active::before{
    background: #FFFFFF;
}
.solution_container .solution_nav .solution_nav_item.active::after{
    content: '';
    position: absolute;
    left: 50%;
    bottom: -6px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 7px 7px 0 7px;
    border-color: #115391 transparent transparent transparent;
    transform: translateX(-50%);
}
.solution_content .solution_desc{
    width: 100%;
    margin: 28px auto 32px;
    font-size: 15px;
    font-family: PingFangSC-Regular, PingFang SC, sans-serif;
    font-weight: 400;
    color:var(--primary-dec);
    line-height: 1.75;
    text-align: center;
}
.solution_content .solution_diagram{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    margin: 0 auto 40px;
}
/* 方案架构图按 SVG 原始尺寸展示，窄屏再等比缩小 */
.solution_content.taut .solution_diagram img{
    display: block;
    width: 1421px;
    max-width: 100%;
    height: auto;
}
.solution_content.slack .solution_diagram img{
    display: block;
    width: 1279px;
    max-width: 100%;
    height: auto;
}
.architecture_list{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(24px, 3vw, 48px);
    margin-top: 8px;
    justify-content: stretch;
}
.solution_container .architecture_detail .title,
.solution_container .advantage_detail .title{
    width: auto;
    height: auto;
    margin: 0 0 16px;
    padding: 0;
    background: transparent;
    font-size: 18px;
    font-family: PingFangSC-Medium, PingFang SC, sans-serif;
    font-weight: 600;
    color: #1A2736;
    line-height: 1.4;
    display: block;
    text-align: left;
}
.solution_container .advantage_detail .title{
    background: transparent;
    color: #1A2736;
}
.solution_content .detail_item_head,
.solution_content .advantage_item_head{
    display: flex;
    width: 100%;
    height: auto;
    min-height: 44px;
    padding: 12px 20px;
    background: linear-gradient(90deg, #c7ddf580 0%, #c7ddf51a 100%);
    box-shadow: none;
    border-radius: 6px;
    border: none;
    box-sizing: border-box;
    align-items: center;
    font-size: 15px;
    font-weight: 500;
    color: #115391;
    cursor: pointer;
    transition: background 0.25s linear, color 0.25s linear;
}
.solution_content .detail_item_head.active,
.solution_content .advantage_item_head.active{
    background: linear-gradient(90deg, #c7ddf580 0%, #c7ddf51a 100%);
    box-shadow: none;
    border-radius: 6px 6px 0 0;
    border: none;
    color: #115391;
    top: auto;
    left: auto;
}
.solution_content .detail_item_head.active .point,
.solution_content .advantage_item_head.active .point{
    background: #115391;
}
.solution_content .detail_item_head .point,
.solution_content .advantage_item_head .point{
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #115391;
    margin-right: 12px;
    flex-shrink: 0;
}
.architecture_list .detail_item,
.architecture_list .advantage_item{
    width: 100%;
    position: relative;
    margin-bottom: 12px;
}
.architecture_list .detail_item:last-child,
.architecture_list .advantage_item:last-child{
    margin-bottom: 0;
}
.architecture_list .item_desc{
    display: none;
    background: #F5F8FC;
    box-shadow: none;
    border-radius: 0 0 6px 6px;
    border: none;
    padding: 16px 20px 18px;
    font-size: 14px;
    font-family: PingFangSC-Regular, PingFang SC, sans-serif;
    font-weight: 400;
    color: #5E6978;
    line-height: 1.75;
}
.architecture_list .item_desc.active{
    display: block;
}
.solution_content.slack{
    display: none;
}
.solution_nav_item:hover{
    cursor: pointer;
}
@media screen and (max-width: 1200px){
    .overall_process .process_list{
        grid-template-columns: 1fr;
    }
}
@media screen and (max-width: 1100px){
    .why_do_container .reason_list{
        grid-template-columns: 1fr;
    }
    .why_do_container .reason_list .reason_item{
        min-height: auto;
    }
    .risk_analysis .risk_list{
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .architecture_list{
        grid-template-columns: 1fr;
    }
    .architecture_detail{
        margin-bottom: 24px;
    }
}
@media screen and (max-width: 500px){
    .why_do_container .reason_list .reason_item{
        width: unset;
    }
    .risk_analysis .risk_list{
        grid-template-columns: 1fr;
    }
    .solution_container .solution .solution_nav{
        width: 100%;
        max-width: 420px;
        gap: 16px;
    }
    .solution_container .solution_nav .solution_nav_item{
        flex: 1;
        padding: 10px 12px;
        font-size: 14px;
    }
    .solution_content .detail_item_head,
    .solution_content .advantage_item_head{
        width: 100%;
    }
    .architecture_list .detail_item,
    .architecture_list .advantage_item{
        width: 100%;
    }
}

