/*root styles*/
:root{
    font-size:13.3333333333vw;
    scroll-behavior: smooth;
}
html,body{
    font-family: systemui,'微软雅黑','Microsoft YaHei Bold',sans-serif;
    width:100%;
    height:100%;
    overflow-x:hidden;
}
*,*::before,*::after{box-sizing: border-box;margin:0;padding:0;}
a{text-decoration: none;color:#323232}
a[role=button]{
    background: linear-gradient(to right,#01A4FF,#4255FC);;
    display: flex;
    align-items: center;
    justify-content: center;
    width:5.6rem;
    height:0.65rem;
    border-radius: 0.35rem;
    font-size:0.28rem;
    line-height: 0.65rem;
    font-weight: 500;
    text-align: center;
    color:#FFFFFF;
    box-shadow: 0 0 0.08rem rgba(83,6,6,.14);
    transition: all .25s ease-in;
}
a[role=button]:hover{
    box-shadow: 0 0.05rem 0.1rem rgba(20, 97, 240, 0.35);
    transform:translateY(-0.05rem);
    cursor: pointer;
}
dl,ul,ol,menu{list-style:none;margin:0;padding:0;}
body > section{
    display: flex;
    width:100%;
}
/*header style*/
body > header {
    display: flex;
    align-items: center;
    justify-content: space-around;
    background:#ffffff;
    width:100%;
    height: 1rem;
    z-index:999999;
    box-shadow: 0 0.1rem 0.2rem rgba(200,200,200,.35);
}
body > header > a{
    display: inline-block;
    height:0.4rem;
    line-height: 0;
}
body > header img{
    height:0.4rem;
}
body > header > nav{
    display: flex;
    justify-content: space-between;
    width: 4rem;
}
nav[role="navigation"] > a:hover{
    color:#0780FE;
}
nav[role="navigation"] > a{
    position:relative;
    font-size:0.24rem;
    letter-spacing: 0.02rem;
}
nav[role="navigation"] > a::after{
    content: "";
    background-color:#0780FE;
    position: absolute;
    left:50%;
    transform:translateX(-50%);
    bottom:-0.2rem;
    width:0;
    height:0.06rem;
    border-radius:0.04rem;
    transition: all .2s ease-in;
}
nav[role="navigation"] > a:where(:hover,:active)::after{
    width:100%;
}
/* heading styles */
h2[role=heading]{
    background: transparent;
    display:flex;
    align-items: center;
    width:fit-content;
    height: 0.45rem;
    padding:0 0.45rem;
    font-size:0.36rem;
    color:#181448;
    margin-bottom:0.4rem;
    text-align: center;
}
/*banner style*/
body > figure[role=banner]{
    width:100%;
}
body > figure[role=banner] > img{
    display:block;
    width:100%;
}
body > figure[role=banner] > figcaption{
    background: rgba(255,255,255,1);
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 0.8rem;
    padding:0 0.3rem;
    font-size: 0.26rem;
}
body > figure[role=banner] > figcaption> time::before{
    background:#03A3FF;
    display: inline-block;
    content:"开课时间";
    width: 1.34rem;
    height: 0.46rem;
    line-height:0.46rem;
    text-align: center;
    border-radius: 0.05rem;
    margin-right:0.2rem;
    color:#FFFFFF;
}
body > figure[role=banner] > figcaption> time::after{
    content:attr(datetime);
    margin-left:0.02rem;
}
body > figure[role=banner] > figcaption > button{
    background: linear-gradient(to right,#01A4FF,#4355FC);
    width: 1.86rem;
    height: 0.46rem;
    line-height: 0.46rem;
    border-radius: 0.3rem;
    font-size:0.26rem;
    border:0;
    color:#FFFFFF;
    outline:none;
    cursor: pointer;
}

/* module styles */
section[data-module]{
    background:#F5F7FA;
    flex-direction: column;
    align-items: center;
    padding:0.4rem 0.3rem;
    font-size:0.2rem;
}

/* module summary styles */
section[data-module=summary]{
    background:#F9FBFC;
}
section[data-module=summary] > h3{
    background: #FFFFFF;
    padding:0.1rem 0.2rem;
    font-size:0.28rem;
    color:#4158FC;
    border-radius: 0.32rem;
    border: 0.01rem solid #4058FC;
}
section[data-module=summary] > p{
    font-size:0.24rem;
    line-height: 0.48rem;
    margin:0.2rem auto;
}
section[data-module=summary] > img{
    width: 90%;
}
section[data-module=summary] ul{
    margin:0.2rem auto;
}
section[data-module=summary] ul > li{
    margin-top:0.1rem;
    font-size:0.24rem;
}
section[data-module=summary] ul > li::before{
    display: inline-block;
    background:#4158FC;
    content:"";
    width: 0.12rem;
    height: 0.12rem;
    border-radius:0.12rem;
    margin-right:0.12rem;
    transform:translateY(-0.02rem);
}

/* module about styles */
section[data-module=about]{
    background:#FFFFFF;
}
section[data-module=about] > figure{
    background: linear-gradient( 270deg, #F3F7FB, #E3EBF6);
    display: flex;
    flex-direction: column;
    width: 100%;
    padding:0.3rem 0.35rem;
    box-shadow: 0 0.03rem 0.05rem rgba(0,0,0,0.2);
    border-radius: 0.4rem;
    margin-bottom:0.5rem;
}
section[data-module=about] > figure p{
    font-size:0.24rem;
    line-height:0.48rem;
}
section[data-module=about] > figure b{
    background:url(../images/about-icon-1.png) no-repeat center/2.7rem 0.5rem;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 2.7rem;
    height: 0.5rem;
    font-size:0.26rem;
    color:#FFFFFF;
    margin:0.2rem 0.1rem 0 0.1rem;
}
section[data-module=about] > figure b:nth-of-type(2){
    background-image:url(../images/about-icon-2.png);
}
section[data-module=about] > figure b:nth-of-type(3){
    background-image:url(../images/about-icon-3.png);
}
section[data-module=about] > figure b:nth-of-type(4){
    background-image:url(../images/about-icon-4.png);
}
section[data-module=about] > figure img{
    width:3.27rem;
    margin:0.3rem auto 0 auto;
}

/* module reason styles */
section[data-module=reason]{
    background:#F6F8F9;
}
section[data-module=reason] > ul{
    display:flex;
    flex-direction: column;
    gap:0.2rem;
    width: 100%;
}
section[data-module=reason] > ul > li{
    background: #FFFFFF;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap:wrap;
    width: 100%;
    padding:0.2rem;
    box-shadow: 0 0.02rem 0.08rem rgba(0,0,0,0.15);
    border-radius: 0.2rem;
}
section[data-module=reason] h4{
    background:url(../images/reason-icon-1.png) no-repeat center/1.2rem 1.2rem;
    display: flex;
    justify-content: center;
    align-items: center;
    min-width: 1.2rem;
    height: 1.2rem;
    margin-right:0.2rem;
    font-size:0.26rem;
    color:#FFFFFF;
    text-align: center;
}
section[data-module=reason] li:nth-of-type(2) > h4{
    background-image:url(../images/reason-icon-2.png);
}
section[data-module=reason] li:nth-of-type(3) > h4{
    background-image:url(../images/reason-icon-3.png);
}
section[data-module=reason] li:nth-of-type(4) > h4{
    background-image:url(../images/reason-icon-4.png);
}
section[data-module=reason] li:nth-of-type(5) > h4{
    background-image:url(../images/reason-icon-5.png);
    font-size:0.2rem;
}
section[data-module=reason] li:nth-of-type(6) > h4{
    background-image:url(../images/reason-icon-6.png);
    font-size:0.21rem;
}
section[data-module=reason] li > p{
    flex:1;
    min-width: 5.1rem;
    font-size:0.24rem;
    line-height: 0.42rem;
}
section[data-module=reason] li:nth-of-type(3) > img{
    margin:0.1rem auto;
    width: 3.04rem;
}
section[data-module=reason] li:nth-of-type(4) > img{
    margin:0.1rem auto;
    width: 100%;
}
section[data-module=reason] li:nth-of-type(5) > p{
    transform:translateY(-0.3rem);
    font-size:0.22rem;
}
section[data-module=reason] blockquote{
    background:#F8F8F8;
    position: absolute;
    bottom:0.2rem;
    right:0.2rem;
    width:5.1rem;
    font-size:0.18rem;
    line-height:0.28rem;
    padding:0.08rem 0.26rem;
    border-radius:0.1rem;
}

/* module advantage styles */
section[data-module=advantage]{
    padding-inline:0.22rem;
}
section[data-module=advantage] > ul{
    background:url(../images/advantage-center.png) no-repeat center left 1.96rem/0.72rem 0.72rem,
    url(../images/advantage-left.png) no-repeat left center/3.02rem 6.7rem,
    url(../images/advantage-right.png) no-repeat right center/5.32rem 6.7rem;
    display:flex;
    width:100%;
    height: 6.7rem;
}
section[data-module=advantage] > ul > li{
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width:2.7rem;
    padding:0.45rem 0.22rem;
}
section[data-module=advantage] > ul > li:nth-child(2){
    flex:1;
    padding:0.45rem 0;
}
section[data-module=advantage] > ul h3{
    background: #F8F8F8;
    width: 2.26rem;
    height: 0.6rem;
    margin-bottom:0.7rem;
    font-size:0.25rem;
    color:#0032C7;
    text-align: center;
    line-height: 0.6rem;
    box-shadow: 0 0.02rem 0.06rem  rgba(0,0,0,0.1);
    border-radius: 0.3rem;
}
section[data-module=advantage] > ul p{
    background: linear-gradient( 270deg, transparent 0%, rgba(255,255,255,.6) 50%, transparent 100%);
    width: 100%;
    height: 0.6rem;
    margin-bottom:0.4rem;
    text-align:center;
    line-height: 0.6rem;
}
section[data-module=advantage] > ul > li:last-child h3{
    margin-bottom:0.2rem;
}
section[data-module=advantage] > ul > li:last-child p{
    height: 0.5rem;
    line-height: 0.5rem;
    margin-bottom:0.22rem;
    color:#FFFFFF;
}

/* module feature styles */
section[data-module=feature]{
    background:url(../images/feature-bg.png) no-repeat center;
}
section[data-module=feature] > h2{
    color:#FFFFFF;
}
section[data-module=feature]  dl{
    background: #FFFFFF;
    display: grid;
    grid-template-columns: repeat(2,1fr);
    grid-gap:0.2rem 0.3rem;
    position: relative;
    width: 100%;
    margin-top:0.6rem;
    padding:0.55rem 0.3rem 0.3rem 0.3rem;
    border-radius: 0.3rem;
    border: 0.01rem solid #94BDFF;
}
section[data-module=feature]  dl > dt{
    background: #009CF1;
    position: absolute;
    top:-0.3rem;
    left:50%;
    transform:translateX(-50%);
    width: 1.8rem;
    height: 0.6rem;
    text-align: center;
    font-size:0.28rem;
    color:#FFFFFF;
    line-height: 0.6rem;
    border-radius: 0.3rem;
    border: 0.01rem solid #FFFFFF;
}
section[data-module=feature]  dl:nth-of-type(2) > dt{
    background:#3354FF;
}
section[data-module=feature]  dl:nth-of-type(3) > dt{
    background:#633DFF;
}
section[data-module=feature]  dl > dd{
    background: #EAF6FF;
    width: 100%;
    height: 0.5rem;
    line-height: 0.5rem;
    text-align: center;
    border-radius: 0.08rem;
    font-size:0.24rem;
}

/* module exam styles */
section[data-module=exam]{
    background:#FFFFFF;
}
section[data-module=exam] > dl{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap:0.45rem;
    position: relative;
    width:100%;
    padding:0.5rem 0.3rem;
    margin:0.4rem auto;
    border-radius:0.6rem;
    border: 0.01rem solid #4861FC;
}
section[data-module=exam] > dl > dt{
    background:#FFFFFF;
    position: absolute;
    top:-0.2rem;
    left:50%;
    transform:translateX(-50%);
    height:0.4rem;
    white-space: nowrap;
    line-height: 0.4rem;
    color:#4861FC;
    font-size:0.28rem;
}
section[data-module=exam] > dl:first-of-type > dd::before{
    display: block;
    background: linear-gradient( 180deg, #7491FE 0%, #4058FC 100%);
    position: absolute;
    left:0;
    top:-0.25rem;
    content:attr(title);
    width: 1.36rem;
    height: 0.5rem;
    line-height: 0.5rem;
    text-align: center;
    font-size:0.24rem;
    color:#FFFFFF;
    border-radius: 0.25rem;
}
section[data-module=exam] > dl:first-of-type > dd{
    background: #EAF6FF;
    position: relative;
    width: 100%;
    font-size:0.2rem;
    line-height: 0.3rem;
    padding:0.45rem 0.2rem 0.25rem 0.2rem;
    border-radius: 0 0.3rem 0.3rem 0.3rem;
    border: 0.01rem solid #AFB9FF;
}
section[data-module=exam] > dl img{
    width: 100%;
}


/* module crowd styles */
section[data-module=crowd]{
    background:url(../images/crowd-bg.png) no-repeat center/cover;
}
section[data-module=crowd] > ul{
    background:url(../images/crowd-icon.png) no-repeat left center/3.16rem 3.16rem;
    display: flex;
    flex-direction: column;
    gap:0.1rem;
    width: 100%;
    padding-left:1.5rem;
}
section[data-module=crowd] > ul > li{
    background:url(../images/crowd-item.png) no-repeat center/3rem 0.5rem;
    width: 3rem;
    height: 0.5rem;
    font-size:0.22rem;
    line-height: 0.5rem;
    text-align: center;
}
section[data-module=crowd] > ul > li:nth-of-type(2),
section[data-module=crowd] > ul > li:nth-of-type(8){
    transform:translateX(0.8rem);
}
section[data-module=crowd] > ul > li:nth-of-type(4){
    transform:translateX(1.2rem);
}
section[data-module=crowd] > ul > li:nth-of-type(3),
section[data-module=crowd] > ul > li:nth-of-type(5){
    transform:translateX(2.4rem);
}
section[data-module=crowd] > ul > li:nth-of-type(6){
    transform:translateX(1.6rem);
}


/* module course styles */
section[data-module=course]{
    background:#FFFFFF;
}
section[data-module=course] > h3{
    background: linear-gradient( 270deg, #4355FC 0%, #01A4FF 100%);
    align-self: flex-start;
    width: fit-content;
    height: 0.6rem;
    font-size:0.21rem;
    color:#FFFFFF;
    line-height: 0.6rem;
    padding:0 0.3rem;
    border-radius: 0 0.4rem 0 0;
}
section[data-module=course] > dl{
    display: flex;
    flex-wrap:wrap;
    width: 100%;
    margin-bottom:0.4rem;
}
section[data-module=course] > dl > dt{
    width: 100%;
    height: 0.7rem;
    font-size:0.22rem;
    font-weight:700;
    line-height: 0.7rem;
    text-indent:0.4rem;
    box-shadow: 0 0.02rem 0.04rem 0.02rem rgba(0,0,0,0.1);
}
section[data-module=course] > dl > dd{
    background: #F6F9FE;
    width: 50%;
    height: 0.7rem;
    font-size:0.2rem;
    line-height: 0.28rem;
    padding-top:0.08rem;
    text-align: center;
    box-shadow: 0 0.01rem 0.02rem 0.01rem rgba(0,0,0,0.1);
}
section[data-module=course] > dl > dd[data-span]{
    width: 100%;
}
section[data-module=course] > article{
    background: #FFFFFF;
    display: flex;
    width: 100%;
    height: 6.6rem;
    padding:0.2rem;
    box-shadow: 0 0.02rem 0.04rem rgba(0,0,0,0.1);
    border: 0.01rem solid #F4F4F4;
}
section[data-module=course] menu{
    min-width:1.6rem;
}
section[data-module=course] menu > li{
    background: #F6FAFD;
    width: 100%;
    height: 0.6rem;
    margin-bottom:0.1rem;
    text-align: center;
    line-height: 0.6rem;
    font-size:0.2rem;
    box-shadow: 0 0.02rem 0.04rem rgba(0,0,0,0.1);
    border-radius: 0.1rem;
    cursor:pointer;
}
section[data-module=course] menu > li[aria-current]{
    background: #4355FC;
    color:#FFFFFF;
    box-shadow: 0 0.03rem 0.1rem rgba(10,65,255,0.5);
}
section[data-module=course] section{
    position: absolute;
    padding:0.6rem 0.3rem;
    opacity: 0;
    z-index:-1;
    overflow-y:auto;
}
section[data-module=course] section[aria-current]{
    flex:1;
    position: relative;
    opacity: 1;
    z-index:1;
}
section[data-module=course] section h4{
    font-size:0.24rem;
    color:#4355FC;
}
section[data-module=course] section p{
    padding:0.2rem 0;
    font-size:0.2rem;
    line-height: 0.4rem;
}