* { margin: 0; padding: 0; box-sizing: border-box; }
body, dd, dl, dt, form, h1, h2, h3, h4, h5, h6, p, a, div, i, img, input, textarea, th, td, li, ol, ul { margin: 0; padding: 0; }
li, ol, ul { list-style: none; overflow: hidden; }
html, body { margin: 0 auto; padding: 0; font-family: "Microsoft Yahei", Arial, Helvetica, sans-serif; color: #232323; font-size: 16px; background-color: #f3f3f3; max-width: 100%; overflow-x: hidden; }
a { color: #000000; text-decoration: none; }
a, button, input { -webkit-tap-highlight-color: rgba(255, 0, 0, 0); }
img { border: none; max-width: 100%; height: auto; }
.clear { clear: both; overflow: hidden; display: block; font-size: 0; height: 0; line-height: 0; }
.center { text-align: center; }
.red { color: red; }
.green { color: green; }
.blue { color: blue; }
.mt1 { margin-top: 10px; }
 .hr {
    margin:6px auto 0;
    height: 1px;
    width:95%;
    border: none;
    border-top: 1px dashed #afafaf;
}
.container { max-width: 960px; margin: 0 auto; background-color: #fff; padding: 0px; overflow: hidden; }
.header {
    width: 100%;
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    padding: 4px 6px;
    background: #fff;
    position: relative;
}
.header .logo { flex: 0 0 auto; }
.header .logo .logo-pc { display: block; }
.header .logo .logo-mobile { display: none; }
.header .banner { flex: 1 1 auto; min-width: 0; margin-left: 10px; overflow: hidden; }
.header .banner img { display: block; width: 100%; height: auto; max-width: 700px; }
.header .hd_nav { display: none; margin-left: auto; padding: 0 4px; color: #fff; text-align: right; flex: 0 0 auto; }
.header .hd_nav a { margin-right: 6px; font-size: 18px; color: #2D92DA; font-weight: 500; }
.header .sitemap { display: none; flex: 0 0 auto; margin-left: 8px; padding: 0 4px; font-size: 28px; line-height: 1; color: #2D92DA; }
.header .sitemap a { color: inherit; text-decoration: none; }
.header .sitemap .sitemap-icon { display: inline-block; font-weight: bold; }
.nav-pc {
    width: 100%;
    height: 40px;
    background-color: #2D92DA;
    overflow: hidden;
    display: block;
}
.nav-pc ul {
    font-size: 15px;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}
.nav-pc ul li { flex: 0 0 auto; text-align: center; white-space: nowrap; }
.nav-pc ul li a {
    line-height: 40px;
    display: block;
    padding: 0 9px;
    color: #fff;
    font-size: 15px;
}
.nav-pc ul li a:hover { background-color: #5077b8; color: #ffffff; }
.nav-secondary {
    width: 100%;
    margin-top: 5px;
    padding: 0 6px;
    overflow: hidden;
}
.nav-secondary .nav-list {
    margin: 0;
    padding: 0;
    font-size: 15px;
    display: flex;
    flex-wrap: wrap;
    max-height: 30px;
    overflow: hidden;
    align-content: flex-start;
}
.nav-secondary .nav-list li {
    float: none;
    line-height: 18px;
    padding: 4px 10px;
    text-align: center;
    background-color: #fff2e8;
    border: 1px #ffe3ca solid;
    border-radius: 4px;
    flex: 0 0 auto;
    white-space: nowrap;
    margin-right: 8px;
    margin-bottom: 0;
}
.nav-secondary .nav-list li a { color: #4f4f4f; }
.nav-secondary .nav-list li:hover { background-color: #ffe3ca; }
.main-wrap {
    display: flex;
    flex-wrap: nowrap;
    width: 100%;
    margin-top: 4px;
    gap: 0;
}
.main-left {
    flex: 1 1 70%;
    min-width: 0;
    padding-right: 10px;
    overflow: hidden;
}
.main-left .inner { width: 100%; overflow: hidden; }
#master-block {
    flex: 0 0 250px;
    width: 250px;
    margin: 0 0 10px 0;
    border-bottom: 1px solid #dadada;
    overflow: hidden;
    font-size: 14px;
    background: #fff;
    order: 0; 
}
#master-block dt {
    height: 32px;
    background-color: #f6f6f6;
    border: 1px solid #DADADA;
    overflow: hidden;
    line-height: 32px;
    clear: both;
}
#master-block dt strong {
    height: 24px;
    line-height: 30px;
    font-size: 14px;
    margin-left: 10px;
    background: url(/img/dt_arrow.png) 0px 10px no-repeat;
    display: block;
    float: left;
    padding-left: 18px;
}
#master-block dd {
    margin: 0;
    padding: 5px;
    border-left: 1px solid #DADADA;
    border-right: 1px solid #DADADA;
    overflow: hidden;
    background: #fff;
}
#master-block dd .d4 { padding: 0; margin: 0; }
#master-block dd .d4 li {
    line-height: 30px;
    overflow: hidden;
    border-bottom: 1px solid #f5f5f5;
    padding-left: 14px;
    background: url(/img/ico-3.gif) 2px 13px no-repeat;
}
#master-block dd .d4 li a { color: #585858; display: block; font-size: 13px; }
#master-block dd .d4 li a:hover { color: #2D92DA; }
.main-right {
    display: none;
    flex: 0 0 0;
    width: 0;
    overflow: hidden;
    padding-left: 0;
}
.place {
    width: 100%;
    height: 32px;
    line-height: 32px;
    background-color: #f6f6f6;
    border: 1px solid #d9d9d9;
    text-indent: 12px;
    font-size: 14px;
    color: #333;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}
.place a { color: #333; margin: 0 2px; }
.place a:hover { color: #ff3333; }
.article {
    width: 100%;
    overflow: hidden;
    padding-bottom: 8px;
    border-left: 1px solid #d9d9d9;
    border-right: 1px solid #d9d9d9;
    border-bottom: 1px solid #d9d9d9;
    background: #fff;
}
.article .title { color: #222; text-align: center; }
.article .title h2 { margin: 15px auto; font-size: 26px; font-family: STXihei, "微软雅黑", "Microsoft YaHei"; }
.article h3 {
    margin: 8px auto;
    font-size: 18px;
    line-height: 30px;
    border-left: 5px solid #a644a0;
    padding: 4px 15px;
    background: #F5F5F5;
}
.article .info { height: 24px; line-height: 20px; text-align: center; color: #666; margin: 0 15px; }
.article .info a {
    color: #690;
}
.article .inform {
    width: 90%;
    padding: 10px;
    line-height: 40px;
    background: #fff5ec;
    border: 1px solid #fcc;
    font-size: 16px;
    color: #706A6A;
    margin: 6px auto;
    overflow: hidden;
    border-radius: 4px;
}
.article .inform form {
    width: 100%;
    margin: auto;
}
.article .inform p {
    line-height: 180%;
    padding: 6px 0;
    margin: 0;
    font-size: 16px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 4px 8px;
}
.article .inform p label {
    display: inline-flex;
    margin: auto 4px;
    align-items: center;
    gap: 2px;
}
.article .inform .ipt, .article .inform .ipt2 , .article .inform .ipt3 {
    padding: 1px 0 1px 5px;
    height: 28px;
    line-height: 18px;
    border: 1px solid #d0ad9a;
    vertical-align: middle;
    background-color: #fff;
    font-size: 16px;
    border-radius: 2px;
}
.article .inform .zbslt {
    color: #3e4144;
    font-size: 14px;
    height: 28px;
    vertical-align: middle;
    border: 1px solid #d0ad9a;
    border-radius: 2px;
    background: #fff;
    padding: 0 2px;
}
.article .inform .button, .article .button {
    width: 80%;
    font-size: 18px;
    overflow: hidden;
    border: 0;
    text-align: center;
    margin: 5px auto 10px auto;
    height: 42px;
    line-height: 42px;
    background: #2D92DA;
    color: #fff;
    border-radius: 6px;
    display: block;
    cursor: pointer;
    -webkit-appearance: none;
    font-weight: 700;
}
.article .inform .button:hover, .article .button:hover {
    background: #1a7abf;
}
.inform .zbbtn {
    font-size: 15px;
    color: #fff;
    height: 32px;
    padding: 0 10px;
    border: 1px solid #fd8e13;
    border-radius: 6px;
    background-color: #fd8e13;
    cursor: pointer;
    font-weight: bold;
    transition: background 0.2s;
    -webkit-appearance: none;
}
.inform .zbbtn:hover {
    background-position: 0 -50px;
    background-color: #e88f2a;
}
.article .content {
    font-size: 16px;
    padding: 10px 25px;
    line-height: 32px;
    color: #252525;
    overflow: hidden;
}
.article .content p { margin: 8px 0; }
.article .content img {
    float: right;
    /* width: 220px; */
    margin-right: 5px;
    max-width: 100%;
    height: auto;
}
.article .content a { color: #0000ff; border-bottom: 1px #0000ff dotted; }
.article .content a:hover {
    color: #FF0080;
}
.tbox {
    margin: 0 0 10px 0;
    border-bottom: 1px solid #dadada;
    overflow: hidden;
    font-size: 14px;
    background: #fff;
}
.tbox dt {
    height: 32px;
    background-color: #f6f6f6;
    border: 1px solid #DADADA;
    overflow: hidden;
    line-height: 32px;
    clear: both;
}
.tbox dt strong {
    height: 24px;
    line-height: 30px;
    font-size: 14px;
    margin-left: 10px;
    background: url(/img/dt_arrow.png) 0px 10px no-repeat;
    display: block;
    float: left;
    padding-left: 18px;
}
.tbox dd {
    margin: 0;
    padding: 5px;
    border-left: 1px solid #DADAAA;
    border-right: 1px solid #DADAAA;
    overflow: hidden;
    background: #fff;
}
.tbox dd .d8 {
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 2px 0;
}
.tbox dd .d8 li {
    float: left;
    margin: 2px 4px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    width: 30%;
    min-width: 80px;
}
.tbox dd .d8 li a {
    display: block;
    line-height: 23px;
    text-indent: 14px;
    background: url(/img/ico-3.gif) 4px 9px no-repeat;
    color: #585858;
    font-size: 13px;
}
.tbox dd .d8 li a:hover { color: #2D92DA; }
.listbox {
    margin: 12px 0 10px 0;
    border-bottom: 1px solid #dadada;
    overflow: hidden;
    font-size: 14px;
    background: #fff;
}
.listbox .title {
    height: 32px;
    background-color: #f6f6f6;
    color: #505050;
    border: 1px solid #DADADA;
    overflow: hidden;
    line-height: 32px;
    clear: both;
}
.listbox .title h2 {
    float: left;
    line-height: 25px;
    font-size: 14px;
    margin-top: 2px;
    padding-left: 26px;
    padding-right: 4px;
}
.listbox .title h2 span {
    color: #df004f;
    font-size: 18px;
}
.listbox .title h2 a {
    color: #505050;
}
.listbox .title h2 a:hover {
    color: #596F37;
    text-decoration: none;
}
.listbox .title .more {
    float: right;
    position: relative;
    padding-top: 2px;
    line-height: 25px;
    padding-right: 8px;
    font-size: 16px;
    color: #505050;
}
.listbox .title .more a {
    color: #505050;
    text-decoration: none;
    font-size: 13px;
}
.listbox .title .more a:hover {
    color: #ff3333;
    text-decoration: underline;
}
.listbox .list {
    margin: 0;
    padding: 5px 5px 10px 5px;
    border-left: 1px solid #DADADA;
    border-right: 1px solid #dadada;
    overflow: hidden;
    background: #fff;
}
.listbox .list .ml {
    padding: 0;
    margin: 0;
}
.listbox .list .ml li {
    line-height: 36px;
    overflow: hidden;
    padding-left: 10px;
    background: url(/img/ico-2.gif) 7px 16px no-repeat;
    border-bottom:1px #ddd dashed;
}
.listbox .list .ml li a {
    color: #585858;
    display: block;
}
.listbox .list .ml li a:hover {
    color: #2D92DA;
}
.listbox .list .ml li .red {
    color: red;
}
.listbox .list .ml li .green {
    color: green;
}
.listbox .list .ml li .blue {
    color: blue;
}
.listbox .list .ml li strong {
    color: #2D92DA;
}
.cms_pages{width:100%;margin:0;padding:8px 0 12px 12px; border-left: 1px solid #d9d9d9;border-right: 1px solid #d9d9d9;}
.cms_pages ul{float:leftpadding:12px 0px 12px 16px;margin:0;}
.cms_pages ul li{float:left;font-family:Tahoma;line-height:17px;margin-right:6px;border:1px solid #E9E9E9;}
.cms_pages ul li a{float:left;padding:2px 4px 2px;color:#555;display:block;}
.cms_pages ul li a:hover{color:#690;text-decoration:none;padding:2px 4px 2px;}
.cms_pages ul li.thisclass,
.cms_pages ul li.thisclass a,.pagebox ul li.thisclass a:hover{background-color:#F8F8F8;padding:2px 4px 2px;font-weight:bold;}
.footer {
    width: 100%;
    margin: 10px auto 0 auto;
    padding: 16px 0;
    color: #999;
    text-align: center;
    line-height: 28px;
    font-size: 12px;
    border-top: 0px solid #dadada;
    overflow: hidden;
    clear: both;
}
.footer a { color: #999; margin: 0 4px; }
.footer .ba { font-size: 12px; margin-top: -46px; }
.footer .copyright { font-size: 14px; }
#btn_top { opacity:0.7; background:#888 url(/img/to_top.png) center 50% no-repeat; background-size:20px 20px; border-radius:50%; position:fixed; left:50%; bottom:60px; margin-left:485px; border:1px solid #555; width:42px; height:42px; display:none; z-index:100001; cursor:pointer; transition:opacity .2s; }
#btn_top:hover { opacity: 1; }

/* ============================================================
           响应式：手机模式 (宽度 <= 820px)
           ============================================================ */
@media screen and (max-width: 820px) {
    .container { padding: 0; max-width: 100%; background: #fff; }

    /* 头部 */
    .header {
        background: #2D92DA;
        padding: 4px 6px;
        flex-wrap: nowrap;
        position: sticky;
        top: 0;
        z-index: 40;
    }
    .header .logo .logo-pc { display: none; }
    .header .logo .logo-mobile { display: block; }
    .header .banner { display: none; }
    .header .hd_nav { display: block; }
    .header .hd_nav a { color: #fff; font-size: 16px; margin-right: 4px; }
    .header .sitemap { display: block; color: #fff; font-size: 28px; padding: 0 2px 0 14px; }
    .header .sitemap a { color: #fff; }
    .header .sitemap .sitemap-icon { display: block; line-height: 45px; font-size: 26px; }
    .nav-pc { display: none !important; }
    .nav-secondary {
        display: block;
        margin-top: 0;
        padding: 4px 0 0 0;
        background: #f3f3f3;
    }
    .nav-secondary .nav-list {
        border-left: #cfc4b6 1px solid;
        border-top: #cfc4b6 1px solid;
        background: #f3f3f3;
        max-height: 120px;
        gap: 0;
    }
    .nav-secondary .nav-list li {
        width: 24.62%;
        margin-right: 0px;
        padding: 0;
        background: none;
        border: none;
        border-right: #ede2cb 1px solid;
        border-bottom: #ede2cb 1px solid;
        border-radius: 0;
        text-align: center;
        line-height: 32px;
        flex: 0 0 24.62%;
        white-space: wrap;
    }
    .nav-secondary .nav-list li a {
        font-size: 17px;
        color: #232323;
        font-weight: 500;
        display: block;
    }
    .nav-secondary .nav-list li:hover { background-color: #eee; }
    /* 主体 - 手机单栏，取消 flex 换行，所有子项宽度 100% */
    .main-wrap {
        flex-direction: column;
        flex-wrap: wrap;
        padding: 0 4px;
    }
    .main-left {
        flex: 1 1 100%;
        padding-right: 0;
        width: 100%;
    }
    /* 大师测算区块在手机模式下占满宽度，自然出现在底部 */
    #master-block {
        flex: 1 1 100% !important;
        width: 100% !important;
        margin-top: 8px;
    }
    #master-block dt strong {
        font-size: 16px;
    }
    #master-block dd .d4 li a {
        line-height: 36px;
        font-size: 16px;
    }
    .main-right {
        display: none !important;
    }
    .article { border-left: none; border-right: none; border-bottom: none; }
    .article .title h2 { font-size: 20px; margin: 10px auto; }
    .article .inform {
        width: 96%;
        padding: 6px 8px;
        font-size: 15px;
    }
    .article .inform p {
        font-size: 15px;
        padding: 4px 0;
        gap: 4px 6px;
    }
    .article .inform .ipt {
        width: 70px !important;
        font-size: 15px;
    }
    .article .inform .ipt2 {
        width: 85px !important;
        font-size: 15px;
    }
    .article .inform .ipt3 {
        font-size: 15px;
    }
    .article .inform .zbslt {
        font-size: 13px;
        height: 26px;
        max-width: 70px;
    }
    .article .inform .button {
        width: 90%;
        height: 38px;
        line-height: 38px;
        font-size: 17px;
    }
    .article .content { padding: 8px 14px; font-size: 15px; line-height: 28px; }
    .article .content img {
        float: right;
        margin: 0 auto 10px auto;
        max-width: 100%;
    }
    .place { font-size: 13px; height: 30px; line-height: 30px; text-indent: 8px; margin: 4px 0; }
    .tbox dt strong { font-size: 16px; }
    .tbox dd .d8 li { width: 45%; min-width: 60px; }
    .tbox dd .d8 li a { font-size: 12px; line-height: 20px; text-indent: 12px; }
    .mt1 { display: block !important; }
    .footer { padding: 16px 0; line-height: 28px; font-size: 11px; margin-top: 6px; }
    .footer .copyright { font-size: 12px; }
    #btn_top { left:auto; right:8px; bottom:40px; margin-left:0; width:38px; height:38px; border-radius:50%; background-size:18px 18px; }
}

@media screen and (max-width: 480px) {
    .header .hd_nav a { font-size: 18px; margin-right: 8px; }
    .header .sitemap { padding: 0 0 0 0px; }
    .header .sitemap .sitemap-icon { font-size: 28px; }
    .place { background: #fff; }
    .article {background: #fff; border: 1px solid #cfc4b6; }
    .article .title { border-bottom: 1px solid #ffe3ed; }
    .article .title h2 { font-size: 20px; margin: 6px auto; color: #2179ba; }
    .article h3 { font-size: 16px; color: #2D92DA; padding-left: 15px; border-left: 5px solid #4A73B5; background: #F5F5F5; }
    .article .info { margin: 2px auto; }
    .article .inform { padding-top: 15px; }
    .article .inform p { font-size: 15px; line-height: 28px; gap: 2px 4px; }
    .article .inform .ipt { width: 65px !important; margin: 4px 2px; }
    .article .inform .ipt2 { width: 85px !important; margin: 4px 2px; }
    .article .inform .ipt3 { margin: 4px 2px; }
    .article .inform .zbslt { margin: 4px 2px; font-size: 15px; height: 28px; max-width: 80px; }
    .article .inform .button, .article .button { margin-top: 12px; height: 34px; line-height: 34px; font-size: 18px; }
    .inform .zbbtn { font-size: 16px; height: 34px; }
    .article .content { padding: 6px 10px; font-size: 16px; line-height: 32px; }
    .article .content { padding: 6px 10px; font-size: 16px; line-height: 32px; }
    .mt1 { display: none !important;}  /* 隐藏推荐测算 */
}