﻿*{
    box-sizing:border-box
}
html{
    scroll-behavior:smooth
}
body{
    margin:0;
    color:#26313b;
    background:#f4f8fa;
    font-family:"Microsoft YaHei","PingFang SC",sans-serif
}
a{
    color:inherit;
    text-decoration:none
}
button{
    font:inherit
}
.wrap{
    width:calc(100% - 40px);
    max-width:1200px;
    margin:0 auto
}
.headx{
    position:sticky;
    top:0;
    z-index:50;
    background:rgba(255,255,255,.96);
    box-shadow:0 5px 24px rgba(35,65,82,.09)
}
.headx .wrap{
    display:flex;
    align-items:center;
    min-height:74px
}
.brand{
    display:flex;
    align-items:center;
    gap:10px;
    flex:0 0 auto;
    font-size:17px
}
.brand img{
    width:43px;
    height:43px;
    border-radius:8px;
    object-fit:cover;
    box-shadow:0 5px 15px rgba(24,180,235,.18)
}
.navix{
    display:flex;
    justify-content:center;
    gap:20px;
    flex:1;
    padding:0 20px;
    color:#687782;
    font-size:14px
}
.navix a:hover{
    color:#15bced
}
.getbt,.prime{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    border-radius:8px
}
.getbt{
    min-height:42px;
    padding:0 18px;
    color:#fff;
    background:#263640;
    font-size:14px;
    font-weight:800;
    box-shadow:0 7px 17px rgba(35,51,61,.18)
}
.menus{
    display:none;
    width:42px;
    height:42px;
    border:0;
    border-radius:8px;
    color:#fff;
    background:#263640;
    font-size:22px
}
.hero{
    overflow:hidden;
    background:#eaf8fd
}
.heroin{
    display:grid;
    grid-template-columns:.92fr 1.08fr;
    gap:72px;
    align-items:center;
    min-height:625px;
    padding-top:48px;
    padding-bottom:52px
}
.hcopy>small{
    color:#129fc9;
    font-size:10px;
    font-weight:900;
    letter-spacing:2px
}
.hcopy h1{
    margin:19px 0 0;
    color:#17313f;
    font-size:57px;
    line-height:1.05;
    letter-spacing:0
}
.hcopy>b{
    display:block;
    max-width:490px;
    margin-top:25px;
    color:#243d4a;
    font-size:29px;
    line-height:1.4
}
.hcopy>p{
    max-width:500px;
    margin:20px 0 0;
    color:#6a7b84;
    font-size:14px;
    line-height:1.9
}
.prime{
    min-height:58px;
    margin-top:29px;
    padding:0 25px;
    color:#fff;
    background:#17bced;
    font-weight:900;
    box-shadow:0 12px 26px rgba(23,188,237,.27)
}
.deskx{
    position:relative;
    height:470px
}
.player{
    position:absolute;
    top:42px;
    right:47px;
    width:390px;
    padding:23px;
    border-radius:8px;
    background:#fff;
    box-shadow:0 23px 48px rgba(41,91,111,.17)
}
.playhd{
    display:flex;
    align-items:center;
    justify-content:space-between;
    color:#7e929c;
    font-size:9px;
    font-weight:900;
    letter-spacing:1px
}
.visual{
    position:relative;
    display:grid;
    height:205px;
    margin-top:15px;
    border-radius:8px;
    color:#fff;
    background:#29414e;
    place-items:center
}
.visual::before{
    position:absolute;
    inset:15px;
    border:1px solid rgba(255,255,255,.15);
    border-radius:8px;
    content:""
}
.visual>i{
    display:grid;
    width:58px;
    height:58px;
    border-radius:50%;
    background:#17bced;
    place-items:center;
    font-size:28px;
    box-shadow:0 8px 22px rgba(0,0,0,.2)
}
.visual span{
    position:absolute;
    right:17px;
    bottom:14px;
    font-size:10px
}
.player>b{
    display:block;
    margin-top:19px;
    font-size:17px
}
.player>p{
    margin:7px 0 0;
    color:#8a979e;
    font-size:10px
}
.barxx{
    height:5px;
    margin-top:13px;
    border-radius:5px;
    background:#e5edef
}
.barxx i{
    display:block;
    width:67%;
    height:100%;
    border-radius:5px;
    background:#16bcec
}
.weekx{
    position:absolute;
    right:0;
    bottom:0;
    width:425px;
    padding:18px 20px;
    border-radius:8px;
    background:#fff;
    box-shadow:0 16px 34px rgba(41,91,111,.14)
}
.weekx small{
    color:#697a83;
    font-size:10px;
    font-weight:800
}
.weekx>div{
    display:grid;
    grid-template-columns:repeat(7,1fr);
    gap:8px;
    margin-top:13px
}
.weekx b{
    display:grid;
    height:36px;
    border-radius:8px;
    color:#81919a;
    background:#f1f6f7;
    place-items:center;
    font-size:10px
}
.weekx .today{
    color:#fff;
    background:#17bced;
    box-shadow:0 6px 15px rgba(23,188,237,.25)
}
.floatx,.floaty{
    position:absolute;
    display:flex;
    align-items:center;
    gap:11px;
    padding:14px 17px;
    border-radius:8px;
    background:#fff;
    box-shadow:0 13px 28px rgba(41,91,111,.16)
}
.floatx{
    top:5px;
    left:0
}
.floaty{
    right:4px;
    bottom:92px
}
.floatx>i{
    color:#f36b8a
}
.floaty>i{
    color:#14b698
}
.floatx>i,.floaty>i{
    font-size:22px
}
.floatx span,.floaty span{
    display:grid;
    gap:3px
}
.floatx b,.floaty b{
    font-size:11px
}
.floatx small,.floaty small{
    color:#8b989e;
    font-size:8px
}
.sect{
    scroll-margin-top:74px;
    padding:92px 0
}
.title{
    margin-bottom:42px;
    text-align:center
}
.title small{
    color:#12a8d3;
    font-size:10px;
    font-weight:900;
    letter-spacing:2px
}
.title p{
    margin:9px 0 0;
    font-size:35px;
    font-weight:900
}
.showx{
    background:#fff
}
.shots{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:22px
}
.shots figure{
    overflow:hidden;
    margin:0;
    border-radius:8px;
    background:#fff;
    box-shadow:0 13px 34px rgba(39,65,79,.13)
}
.shots img{
    display:block;
    width:100%;
    height:auto
}
.shots figcaption{
    padding:17px;
    color:#53636c;
    font-size:13px;
    font-weight:800;
    text-align:center
}
.plusx{
    background:#f3f8fa
}
.feats{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px
}
.feats article{
    min-height:218px;
    padding:30px;
    border-radius:8px;
    background:#fff;
    box-shadow:0 9px 26px rgba(43,77,94,.08)
}
.feats i{
    display:grid;
    width:48px;
    height:48px;
    border-radius:8px;
    color:#fff;
    background:#17bced;
    place-items:center;
    font-size:23px
}
.feats article:nth-child(2n) i{
    background:#f1718d
}
.feats article:nth-child(3n) i{
    background:#20b69e
}
.feats b{
    display:block;
    margin-top:23px;
    font-size:18px
}
.feats p{
    margin:11px 0 0;
    color:#74848c;
    font-size:13px;
    line-height:1.8
}
.getxx{
    background:#17bced
}
.lightx{
    color:#fff
}
.lightx small{
    color:#dff8ff
}
.cards{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:16px
}
.cards>a{
    position:relative;
    display:flex;
    align-items:center;
    gap:15px;
    min-height:132px;
    padding:25px;
    border-radius:8px;
    background:#fff;
    box-shadow:0 12px 27px rgba(13,112,143,.18)
}
.cards>a>span{
    position:absolute;
    top:16px;
    right:18px;
    color:#b8c7ce;
    font-size:9px
}
.cards>a>i{
    display:grid;
    width:48px;
    height:48px;
    border-radius:8px;
    color:#fff;
    background:#29414e;
    place-items:center;
    font-size:23px
}
.cards div{
    flex:1
}
.cards b{
    font-size:16px
}
.cards p{
    margin:7px 0 0;
    color:#85939a;
    font-size:11px
}
.cards em{
    color:#16a8d2;
    font-size:18px
}
.flowx{
    background:#fff
}
.steps{
    position:relative;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:24px
}
.steps::before{
    position:absolute;
    top:31px;
    right:9%;
    left:9%;
    height:2px;
    background:#d8e8ec;
    content:""
}
.steps article{
    position:relative;
    z-index:1;
    text-align:center
}
.steps article>b{
    display:grid;
    width:64px;
    height:64px;
    margin:0 auto;
    border-radius:50%;
    color:#fff;
    background:#263d49;
    box-shadow:0 9px 22px rgba(37,61,73,.18);
    place-items:center;
    font-size:11px
}
.steps article>div{
    margin-top:22px
}
.steps i{
    color:#14bcec;
    font-size:24px
}
.steps strong{
    display:block;
    margin-top:10px;
    font-size:17px
}
.steps p{
    max-width:210px;
    margin:8px auto 0;
    color:#7d8b92;
    font-size:12px;
    line-height:1.7
}
.faqxx{
    background:#ecf8f5
}
.faqs{
    display:grid;
    gap:10px
}
.faqs article{
    overflow:hidden;
    border-radius:8px;
    background:#fff;
    box-shadow:0 6px 18px rgba(40,91,78,.07)
}
.faqs button{
    display:flex;
    align-items:center;
    justify-content:space-between;
    width:100%;
    min-height:70px;
    padding:0 22px;
    border:0;
    color:#293b43;
    background:transparent;
    cursor:pointer;
    text-align:left
}
.faqs button b{
    font-size:16px
}
.faqs button i{
    color:#16add8;
    font-size:21px
}
.faqs article>p{
    display:none;
    max-width:850px;
    margin:-2px 0 0;
    padding:0 22px 23px;
    color:#72828a;
    font-size:13px;
    line-height:1.85
}
.faqs article.open>p{
    display:block
}
.infox{
    background:#fff
}
.newsx{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:18px
}
.newsx article{
    position:relative;
    min-height:180px;
    padding:28px 58px 28px 28px;
    border-radius:8px;
    background:#f3f8fa;
    box-shadow:0 8px 22px rgba(37,70,87,.06)
}
.newsx time{
    color:#13a5d0;
    font-size:10px
}
.newsx b{
    display:block;
    margin-top:17px;
    font-size:18px
}
.newsx p{
    margin:11px 0 0;
    color:#74838b;
    font-size:13px;
    line-height:1.8
}
.newsx span{
    position:absolute;
    top:24px;
    right:24px;
    color:#c9d9de;
    font-size:25px;
    font-weight:900
}
.voice{
    color:#fff;
    background:#293e49
}
.mason{
    columns:3;
    column-gap:18px
}
.mason article{
    display:inline-block;
    width:100%;
    margin:0 0 18px;
    padding:24px;
    border-radius:8px;
    color:#2b3b43;
    background:#fff;
    box-shadow:0 10px 25px rgba(12,26,32,.18);
    break-inside:avoid
}
.mason article:nth-child(2n){
    padding-bottom:40px
}
.mason header{
    display:flex;
    justify-content:space-between;
    gap:14px;
    align-items:center
}
.mason b{
    color:#0da9d8;
    font-size:13px
}
.mason time{
    color:#9aa7ad;
    font-size:9px
}
.mason p{
    margin:18px 0 0;
    color:#65757d;
    font-size:13px;
    line-height:1.9
}
.footx{
    color:#fff;
    background:#20313a
}
.footx .wrap{
    display:grid;
    grid-template-columns:auto 1fr auto;
    gap:28px;
    align-items:center;
    min-height:150px
}
.footx nav{
    display:flex;
    justify-content:center;
    gap:15px;
    color:#bdc9ce;
    font-size:12px
}
.footx .getbt{
    background:#17bced
}
@media(max-width:767px){
    .wrap{
        width:calc(100% - 30px)
    }
    .headx .wrap{
        min-height:66px
    }
    .brand img{
        width:40px;
        height:40px
    }
    .navix{
        position:absolute;
        top:66px;
        right:0;
        left:0;
        display:none;
        padding:14px 20px 20px;
        background:#fff;
        box-shadow:0 15px 25px rgba(35,65,82,.1);
        flex-direction:column;
        gap:0
    }
    .navix.active{
        display:flex
    }
    .navix a{
        padding:12px 4px;
        border-bottom:1px solid #e5edef
    }
    .headx .getbt{
        display:none
    }
    .menus{
        display:block;
        margin-left:auto
    }
    .heroin{
        grid-template-columns:1fr;
        gap:24px;
        min-height:760px;
        padding-top:42px;
        padding-bottom:35px
    }
    .hcopy{
        text-align:center
    }
    .hcopy h1{
        font-size:45px
    }
    .hcopy>b{
        font-size:27px
    }
    .hcopy>p{
        font-size:13px
    }
    .prime{
        width:100%
    }
    .deskx{
        height:285px
    }
    .player{
        top:10px;
        right:20px;
        left:20px;
        width:auto;
        padding:15px
    }
    .visual{
        height:100px
    }
    .visual>i{
        width:42px;
        height:42px;
        font-size:21px
    }
    .player>b{
        margin-top:11px;
        font-size:13px
    }
    .player>p{
        margin-top:4px
    }
    .weekx{
        right:5px;
        bottom:0;
        left:5px;
        width:auto;
        padding:12px 13px
    }
    .weekx>div{
        gap:4px;
        margin-top:8px
    }
    .weekx b{
        height:28px
    }
    .floatx{
        top:-17px;
        left:0;
        padding:10px 12px
    }
    .floaty{
        display:none
    }
    .sect{
        scroll-margin-top:66px;
        padding:70px 0
    }
    .title{
        margin-bottom:32px
    }
    .title p{
        font-size:29px
    }
    .shots{
        display:flex;
        gap:14px;
        overflow-x:auto;
        padding:10px 2px 20px;
        scroll-snap-type:x mandatory
    }
    .shots figure{
        flex:0 0 78%;
        scroll-snap-align:start
    }
    .feats,.cards,.newsx{
        grid-template-columns:1fr
    }
    .feats article{
        min-height:0;
        padding:27px
    }
    .cards>a{
        min-height:120px
    }
    .steps{
        grid-template-columns:1fr;
        gap:0;
        padding-left:20px
    }
    .steps::before{
        top:31px;
        bottom:31px;
        left:51px;
        width:2px;
        height:auto
    }
    .steps article{
        display:grid;
        grid-template-columns:64px 1fr;
        gap:22px;
        align-items:center;
        min-height:130px;
        text-align:left
    }
    .steps article>b{
        margin:0
    }
    .steps article>div{
        margin:0
    }
    .steps strong{
        margin-top:5px
    }
    .steps p{
        margin:5px 0 0
    }
    .faqs button{
        min-height:68px;
        padding:0 18px
    }
    .faqs button b{
        max-width:280px;
        font-size:15px
    }
    .newsx article{
        min-height:0
    }
    .mason{
        columns:1
    }
    .footx .wrap{
        grid-template-columns:1fr;
        gap:24px;
        padding-top:38px;
        padding-bottom:38px
    }
    .footx nav{
        display:grid;
        grid-template-columns:repeat(2,1fr);
        justify-content:start;
        gap:12px
    }
    .footx .getbt{
        width:100%
    }
}
