/*root styles*/
:root{
    font:normal normal normal 16px/1 '微软雅黑','Microsoft YaHei Bold',sans-serif;
}
html,body{
    width:100%;
    height:100%;
    color:#323232;
}
*,*::before,*::after{box-sizing: border-box;margin:0;padding:0;}
a{text-decoration: none;color:#323232;}
a[role=button]{
    background: linear-gradient(to right,#FF836D,#FFA648);
    display: flex;
    align-items: center;
    justify-content: center;
    min-width:600px;
    height:60px;
    border-radius: 30px;
    font-size:24px;
    line-height: 60px;
    font-weight: 700;
    text-align: center;
    color:#FFFFFF;
    box-shadow:0 0 8px rgba(83,6,6,.14);
    transition: all .25s ease-in;
}
a[role=button]:hover{
    box-shadow: 0 5px 10px rgba(215, 140, 10, 0.35);
    transform:translateY(-5px);
    cursor: pointer;
}
dl,ul,ol,menu{list-style:none;margin:0;padding:0;}

/*header style*/
body > header {
    background:#FFFFFF;
    position: fixed;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    top:0;
    left:0;
    width:100%;
    height: 80px;
    z-index:999999;
    padding:0 calc(50% - 600px);
    box-shadow: 0 5px 10px rgba(200,200,200,.35);
}
body > header img{
    height:40px;
    cursor: pointer;
}
body > header > nav{
    display: flex;
    justify-content: space-between;
    width: 500px;
    padding:0 50px;
}
nav[role=navigation] > a{
    position:relative;
    font-size:20px;
    letter-spacing: 1px;
}
nav[role=navigation] > a:hover{
    color:#0780FE;
}
nav[role=navigation] > a::after{
    content: "";
    background-color: #0780FE;
    position: absolute;
    left:50%;
    transform:translateX(-50%);
    bottom:-10px;
    width:0;
    height:3px;
    border-radius:2px;
    transition: all .2s ease-in;
}
nav[role=navigation] > a:hover::after,nav[role=navigation] > a:active::after{
    width:100%;
}
body > header > code{
    display: flex;
    align-items: center;
    height:30px;
    color:#0780FE;
    font: normal bold 26px/35px Alibaba-PuHuiTi-B, Alibaba-PuHuiTi,Arial, serif;
}
body > header > code > img{
    height:36px;
}

/* heading styles */
h2[role=heading]{
    background: url(../images/heading-bg.png) no-repeat center bottom/222px 6px;
    display:flex;
    align-items: center;
    width:fit-content;
    height: 55px;
    padding-bottom:15px;
    font-size:35px;
    color:#181448;
    margin-bottom:40px;
    text-align: center;
}
/* banner style */
body > figure[role=banner]{
    background:linear-gradient(45deg,#D4EAFF,#D4EAFF);
    position: relative;
    width:100%;
    min-width:1200px;
    margin-top:80px;
    padding-top:400px;
    overflow:hidden;
}
body > figure[role=banner] > img{
    position: absolute;
    top:0;
    left:50%;
    transform:translateX(-50%);
    width:1920px;
    object-position: center;
}
body > figure[role=banner] > figcaption{
    background: rgba(255,255,255,1);
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 60px;
    padding:0 calc(50% - 510px);
    font-size:22px;
}
body > figure[role=banner] > figcaption> time::before{
    background:#1A79F8;
    display: inline-block;
    content:"开课时间";
    width: 126px;
    height: 34px;
    line-height:34px;
    text-align: center;
    border-radius: 5px;
    margin-right:20px;
    color:#FFFFFF;
}
body > figure[role=banner] > figcaption> time::after{
    content:attr(datetime);
    margin-left:20px;
}
body > figure[role=banner] > figcaption > button{
    background: linear-gradient(to right,#2196FF,#68B4F1);
    width: 172px;
    height: 34px;
    line-height: 34px;
    border-radius: 20px;
    font-size:22px;
    border:0;
    color:#FFFFFF;
    outline:none;
    cursor: pointer;
}

/*footer styles*/
body > footer{
    background: #323232;
    display: flex;
    justify-content: center;
    align-items: center;
    gap:5px;
    width:100%;
    min-width:1200px;
    color:#FFFFFF;
    font-size:14px;
    height:60px;
}

/* module styles */
section[data-module]{
    display: flex;
    width:100%;
    min-width: 1200px;
    padding:50px calc(50% - 600px);
    flex-direction: column;
    align-items: center;
}

/* module summary styles */
section[data-module=summary]{
    background:#F6F8FA;
}
section[data-module=summary] > ul{
    display: flex;
    justify-content: space-between;
    gap:40px;
}
section[data-module=summary] > ul > li{
    background: #FFFFFF url(../images/summary-title-1.png) no-repeat center top/ 560px 100px;
    display: flex;
    flex-direction: column;
    width: 560px;
    height: 674px;
    padding:0 30px 30px 30px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.05);
    border-radius: 20px;
}
section[data-module=summary] > ul h3{
    height: 100px;
    line-height: 100px;
    text-align: center;
    font-size:24px;
}
section[data-module=summary] > ul p{
    padding:30px 0;
    font-size:18px;
    line-height:36px;
}
section[data-module=summary] > ul small{
    text-align: center;
    font-size:16px;
    padding-top:20px;
}

/* module about styles */
section[data-module=about] > dl{
    background: linear-gradient( 180deg, #EFF6FB 0%, #F8FBFD 100%);
    position: relative;
    display: flex;
    justify-content: space-between;
    width: 1060px;
    padding:106px 30px 30px 30px;
    line-height:36px;
    border-radius: 20px;
    margin-bottom:40px;
}
section[data-module=about] > dl > dt{
    background: linear-gradient( 270deg, #4CA0F2 0%, #2567E1 100%);
    position: absolute;
    left:0;
    top:30px;
    width: fit-content;
    height: 46px;
    padding:0 40px;
    line-height: 46px;
    font-size:24px;
    color:#FFFFFF;
    border-radius: 0 40px 40px 0;
}
section[data-module=about] > dl:last-child > dd{
    background: #FFFFFF;
    width: 320px;
    border-radius: 10px;
    border: 1px solid #EEF0F1;
}
section[data-module=about] > dl h4{
    background: url(../images/about-icon-1.png) no-repeat center top 15px/40px 40px,
    linear-gradient( 270deg, #F1FCFF 0%, #A1E3F4 100%);
    width: 320px;
    height: 110px;
    padding-top:60px;
    text-align: center;
    color:#003F4F;
    font-size:20px;
    border-radius: 10px 10px 0 0;
}
section[data-module=about] > dl dd:nth-of-type(2) h4{
    background-image:url(../images/about-icon-2.png),linear-gradient( 270deg, #FFF9FC 0%, #FFD7E9 100%);
    color:#9D004A;
}
section[data-module=about] > dl dd:nth-of-type(3) h4{
    background-image:url(../images/about-icon-3.png),linear-gradient( 90deg, #E0F4D2 0%, #FAFFF6 100%);
    color:#014D00;
}
section[data-module=about] > dl p{
    padding:20px;
    font-size:18px;
    line-height:36px;
}

/* module reason styles */
section[data-module=reason]{
    background:#F5F6FB;
}
section[data-module=reason] > ul{
    display:flex;
    flex-wrap:wrap;
    gap:20px;
    counter-reset: number;
    margin-bottom:40px;
}
section[data-module=reason] > ul > li::before{
    background:linear-gradient(to right,#98A2FF,#626CFF);
    display: flex;
    align-items: center;
    width:50px;
    height:50px;
    padding-left:8px;
    counter-increment: number;
    content:"0"counter(number);
    color:#FFFFFF;
    font-size:24px;
    font-weight:500;
    font-style:italic;
    border-radius:60px;
    box-shadow:0 0 0 5px rgba(152,161,255,.6), 0 0 0 10px rgba(152,161,255,.3);
}
section[data-module=reason] > ul > li{
    background: #FFFFFF;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 280px;
    padding:30px;
    line-height:36px;
    border-radius: 20px;
}
section[data-module=reason] > ul > li > h4{
    font-size:24px;
    color:#0B2A7D;
    padding:15px 0;
}

/* module introduce styles */
section[data-module=introduce] > ul{
    display: grid;
    grid-template-columns: repeat(2,580px);
    grid-template-rows: repeat(2, 360px);
    gap: 40px;
}
section[data-module=introduce] > ul > li{
    background:#F3F6F8 url(../images/introduce-bg-1.png) no-repeat right bottom;
    border-radius: 20px;
    padding:50px;
}
section[data-module=introduce] > ul > li:nth-of-type(2){
    background-image:url(../images/introduce-bg-3.png);
    grid-area: 1 / 2 / 3 / 3;
}
section[data-module=introduce] > ul > li:nth-of-type(3){
    background-image:url(../images/introduce-bg-2.png);
}
section[data-module=introduce] > ul > li > h3{
    font-size:26px;
    color:#0B2A7D;
}
section[data-module=introduce] > ul > li > p{
    line-height:36px;
    padding:15px 0;
}
section[data-module=introduce] > ul > li > ul{
    background:linear-gradient(#2598FE,#2598FE) no-repeat left 30px center/2px 220px;
    display: flex;
    flex-direction: column;
    width: 100%;
    gap:30px;
}
section[data-module=introduce] > ul > li > ul > li{
    background: #FFFFFF;
    display: flex;
    gap:10px;
    width: 500px;
    padding: 20px 20px 20px 0;
    line-height:36px;
    border-radius: 20px;
    border: 1px solid #CAE6FF;
}
section[data-module=introduce] > ul li[title]::before{
    background: linear-gradient( 270deg, #FFFFFF 0%, #C9E5FF 100%);
    min-width: 116px;
    height: 40px;
    font-weight:500;
    line-height: 40px;
    content:attr(title);
}

/* module feature styles */
section[data-module=feature]{
    background:#E6F2FF;
}
section[data-module=feature] > article{
    background:url(../images/feature-bg.png) no-repeat center/cover;
    display: flex;
    width:1200px;
    height:352px;
    padding:0 0 0 226px;
    overflow:hidden;
}
section[data-module=feature] menu{
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: space-between;
    width: 354px;
    height:100%;
}
section[data-module=feature] menu > li::before{
    background:url(../images/feature-icon-2.png) no-repeat center/24px 24px;
    display: inline-block;
    position: absolute;
    left:-55px;
    top:6px;
    width:24px;
    height:24px;
    content:"";
}
section[data-module=feature] menu > li{
    background: linear-gradient( 270deg, #11A5E4 0%, #007DEC 100%);
    position: relative;
    width: 184px;
    height: 42px;
    line-height: 42px;
    font-size:18px;
    color:#FFFFFF;
    cursor: pointer;
    text-align: center;
    border-radius: 21px;
}
section[data-module=feature] menu > li[aria-current]{
    background: linear-gradient( 270deg, #FFB500 0%, #F87508 100%);
    color:#FFFFFF;
}
section[data-module=feature] menu > li[aria-current]::before{
    background-image:url(../images/feature-icon-1.png);
}
section[data-module=feature] menu > li:nth-of-type(1),
section[data-module=feature] menu > li:nth-of-type(6){
    transform:translateX(-108px);
}
section[data-module=feature] menu > li:nth-of-type(2),
section[data-module=feature] menu > li:nth-of-type(5){
    transform:translateX(-33px);
}
section[data-module=feature] p::before{
    display: block;
    content:attr(title);
    font-size:20px;
    font-weight:500;
    margin-bottom:10px;
    color:#022553;
}
section[data-module=feature] p{
    display: flex;
    flex-direction: column;
    justify-content: center;
    height:100%;
    position: absolute;
    padding-left:110px;
    opacity: 0;
    z-index:-1;
    font-size:18px;
    line-height:30px;
    transform:scaleX(0);
}
section[data-module=feature] p[aria-current]{
    position: relative;
    opacity: 1;
    z-index:1;
    transform:scaleX(1);
}

/* module step styles */
section[data-module=step]{
    flex-flow:row wrap;
    justify-content: center;
}
section[data-module=step] > h2{
    width:100%;
    justify-content: center;
}
section[data-module=step] > div{
    background: #FFFFFF;
    display: flex;
    flex-direction: column;
    width:560px;
    margin:0 10px;
    height: 700px;
    color:#0050B9;
    box-shadow: 0 4px 14px rgba(0,0,0,0.11);
    border-radius: 20px;
}
section[data-module=step] > div > h3{
    background:url(../images/step-title-1.png) no-repeat center/cover;
    height:99px;
    padding-left:50px;
    margin-bottom:40px;
    line-height:99px;
    font-size:26px;
}
section[data-module=step] > div:nth-of-type(2){
    color:#5B0BE9;
}
section[data-module=step] > div:nth-of-type(2) > h3{
    background-image:url(../images/step-title-2.png);
}
section[data-module=step] > div > dl{
    background: #FFFFFF;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin:20px 40px;
    padding:30px;
    border-radius: 20px;
    border: 1px solid currentColor;
}
section[data-module=step] dl > dt{
    background: #FFFFFF;
    width: 148px;
    height: 40px;
    margin-top:-50px;
    font-size:22px;
    font-weight:500;
    line-height: 40px;
    text-align: center;
    border-radius: 20px;
    border: 1px solid currentColor;
}
section[data-module=step] dl > dd::before{
    display: inline-block;
    position: absolute;
    left:0;
    top:18px;
    content:"";
    width:12px;
    height:12px;
    border:8px solid transparent;
    border-left-color:#0050B9;
}
section[data-module=step] > div:nth-of-type(2) dl > dd::before{
    border-left-color:#5B0BE9;
}
section[data-module=step] dl > dd{
    position: relative;
    padding-left:15px;
    line-height:36px;
    color:#333;
    padding-top:10px;
}

/* module cert styles */
section[data-module=cert]{
    background:url(../images/cert-bg.png) no-repeat center/cover;
}
section[data-module=cert] > figure{
    display: flex;
    flex-direction: column;
    align-items: center;
    color:#FFFFFF;
    gap:20px;
    margin-bottom:40px;
}

/* module crowd styles */
section[data-module=crowd]{
    background:#F6F8FA;
}
section[data-module=crowd] > ul{
    display: flex;
    gap:30px;
}
section[data-module=crowd] > ul > li{
    background: linear-gradient( 180deg, #0E7BFF 0%, #20B2FF 100%);
    display: flex;
    flex-direction: column;
    width: 260px;
    border-radius: 30px;
}
section[data-module=crowd] > ul > li:nth-of-type(2){
    background: linear-gradient( 180deg, #FF922A 0%, #FFCE98 100%);
}
section[data-module=crowd] > ul > li:nth-of-type(3){
    background: linear-gradient( 180deg, #7F7CFE 0%, #A4A4FF 100%);
}
section[data-module=crowd] > ul > li:nth-of-type(4){
    background: linear-gradient( 180deg, #00C9AA 0%, #59EFDA 100%);
}
section[data-module=crowd] > ul > li > h3{
    height:80px;
    line-height:80px;
    font-size:25px;
    text-align: center;
    color:#FFFFFF;
}
section[data-module=crowd] > ul > li > p{
    background: linear-gradient( 180deg, rgba(255,255,255,0.73) 0%, rgba(255,255,255,0.92) 22%, #FFFFFF 100%);
    flex:1;
    width: 260px;
    text-align: center;
    line-height:30px;
    padding:20px;
    border-radius: 30px;
}

/* module exam styles */
section[data-module=exam] > ul{
    background:url(../images/exam-bg.png) no-repeat center/1038px 425px;
    display: flex;
    flex-wrap:wrap;
    gap:20px;
    width: 1038px;
    height:425px;
    padding:60px 129px;
}
section[data-module=exam] > ul > li{
    background: #FFFFFF;
    width:180px;
    line-height:45px;
    text-align: center;
    border-radius:8px;
}
section[data-module=exam] > ul > li:nth-of-type(1),
section[data-module=exam] > ul > li:nth-of-type(3),
section[data-module=exam] > ul > li:nth-of-type(5),
section[data-module=exam] > ul > li:nth-of-type(7),
section[data-module=exam] > ul > li:nth-of-type(8),
section[data-module=exam] > ul > li:nth-of-type(9),
section[data-module=exam] > ul > li:nth-of-type(10)
{
    background: linear-gradient( 270deg, #68B4F1 0%, #2196FF 100%);
    color:#FFFFFF;
}
section[data-module=exam] > ul > li:nth-of-type(2),
section[data-module=exam] > ul > li:nth-of-type(4),
section[data-module=exam] > ul > li:nth-of-type(6){
    width:580px;
}
section[data-module=exam] > ul > li:nth-of-type(13){
    display: flex;
    justify-content: space-between;
    background:transparent;
}
section[data-module=exam] > ul > li span{
    background:#FFFFFF;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 85px;
    border-radius:8px;
}

/* module course styles */
section[data-module=course] > article{
    display: flex;
    justify-content: space-between;
    position: relative;
    width:1116px;
}
section[data-module=course] > article menu{
    display: flex;
    flex-direction: column;
    gap:30px;
    width: 226px;
}
section[data-module=course] > article menu li{
    background: #F6F8FA;
    height: 75px;
    font-size:23px;
    text-align: center;
    line-height: 75px;
    border-radius: 10px;
    cursor: pointer;
    transition:all .25s ease-out;
}
section[data-module=course] > article menu li[aria-current]{
    background: linear-gradient( 270deg, #4EB0FF 0%, #0C87F6 100%);
    color:#FFFFFF;
}
section[data-module=course] > article table{
    position: absolute;
    width:830px;
    table-layout: fixed;
    border-spacing: 10px;
    top:0;
    right:0;
    transform:scaleX(0);
    transform-origin: left top;
    opacity:0;
    z-index:-1;
    transition: all .25s ease-out;
}
section[data-module=course] > article table[aria-current]{
    position: relative;
    opacity: 1;
    z-index:1;
    transform: scaleX(1);
}
section[data-module=course] > article table td{
    vertical-align: top;
}
section[data-module=course] > article table strong{
    background:#FFB974;
    display: inline-block;
    margin:10px 0;
    padding:5px 30px;
    border-radius:50px;
    font-size:22px;
}
section[data-module=course] > article table th strong{
    margin-top:-10px;
}
section[data-module=course] > article table span{
    background:#F6F8FA;
    display: inline-block;
    width:100%;
    padding:20px 30px;
    font-size:18px;
    line-height: 40px;
    border-radius: 10px;
}