@charset "utf-8";

html, body, ul, li, dl, dt, dd, div {
    padding: 0;
    margin: 0
}

ul, li, dl, dt, dd {
    list-style: none;
}

img {
    vertical-align: middle;
}

a, input, button {
    text-decoration: none;
    outline: none;
}

@font-face {
    font-family: 'SourceHanSansCN-Normal';
    src: url('SourceHanSansCN-Normal.otf');
}

body {
    font-family: "Microsoft YaHei", "微软雅黑", "Source Han Sans CN", "PingFang SC", "Lucida Grande", "Helvetica Neue", Helvetica, Arial, "Hiragino Sans GB", "Hiragino Sans GB W3", "WenQuanYi Micro Hei", STXihei, "思源黑体", "苹果苹方", "华文细黑", Heiti, "黑体", SimSun, "宋体", sans-serif
}

body {
    /* 桌面端最小宽度已移至 responsive.css 的桌面媒体查询中，
       避免 980px 固定宽度泄漏到平板/手机端造成横向溢出 */
}

a,
a:focus,
a:hover {
    color: #333;
    text-decoration: none;
}

.header {
    width: 1200px;
    height: 70px;
    margin: 1px auto;
    background: #fff;
    /* 语言按钮绝对定位的定位基准（W3C） */
    position: relative;
    /* 导航栏固定：滚动时保持视口顶部（W3C position:sticky） */
    position: sticky;
    top: 0;
    /* 高于移动端遮罩(9999)，避免汉堡按钮被遮罩盖住无法点击 */
    z-index: 10000;
}

/* 导航栏全宽背景：用伪元素向左右延伸，让白色背景占满整个视口宽度，
   避免 sticky 固定后 1200px 两侧透出下方滚动内容（W3C 标准做法） */
.header::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: calc((100% - 100vw) / 2);
    right: calc((100% - 100vw) / 2);
    background: #fff;
    z-index: -1;
}

.header .logo {
    float: left;
    min-width: 180px;
    width: 20%;
    padding-top: 11px;
}

.header .logo img {
}

.header .menu {
    position: relative;
    float: left;
    top: 1px;
    width: auto;
    margin-left: 60px;
    z-index: 1000;
}

/* 导航标签：flex 固定间距布局（gap 恒定 40px），标签文字变长时自动右移、
   每个标签之间的间距始终保持一致；一行放不下时换行兜底，绝不重叠。
   移动端滑出菜单由 responsive.css 覆盖为纵向列表，不受此规则影响（W3C） */
.header .menu ul {
    display: flex;
    flex-wrap: wrap;
    column-gap: 60px;
    padding: 0;
    margin: 0;
    list-style: none;
}

.header .menu ul li {
    float: none;
    min-width: 0;
    text-align: center;
    line-height: 68px;
    font-size: 16px;
    font-weight: bold;
    margin-right: 0;
}

.header .menu ul li a {
    display: block;
    color: #333;
    /* 导航标题禁止折行：中英切换后长英文标题不换行、不破坏导航栏高度（W3C 排版） */
    white-space: nowrap;
}

/* 移动端语言切换项：默认桌面端隐藏，仅移动端（responsive.css 媒体查询）显示 */
.header .menu .m-lang-switch {
    display: none;
}

.header .menu ul li .dropdown-toggle {
    border-bottom: solid 2px #fff;
    text-decoration: none;
    cursor: pointer;
}

.header .menu ul li .showline {
    border-bottom: solid 2px #ff3333;
}

.header .menu ul li .dropdown-toggle:hover {
    border-bottom: solid 2px #ff3333;
}

.header .menu ul li.open a.dropdown-toggle {
    border-bottom: solid 2px #ff3333;
}

.header .search {
    /* 语言按钮绝对定位于导航栏右缘，脱离浮动流：
       菜单（menu）再宽也不会把语言按钮挤到下一行（窗口缩小时布局不乱，W3C）
       right 值 = 距视口右侧 100px：header 1200px 居中，视口留白 (100vw-1200px)/2 */
    position: absolute;
    right: calc(100px - (100vw - 1200px) / 2);
    top: 15px;
    float: none;
    margin: 0;
    /*padding: 9px 7px;*/
    /*background: #ebebeb;*/
    /*padding: 6px 0 6px 35px;*/
    /*margin-top: 22px;*/
    /*background: url("https://heytalk-oa.oss-cn-beijing.aliyuncs.com/web-image/peijie/lang.svg")  no-repeat 0 center;*/
    /*display: flex;*/
    /*flex-direction: row;*/
    /*!*flex-wrap: nowrap;*!*/
    /*align-items: center;*/
}

.header .search .icon {
    width: 2em;
    height: 2em;
    vertical-align: middle;
    fill: currentColor;
    overflow: hidden;
}

.header .search .lang-curr {
    display: flex;
    flex-direction: row;
    align-items: center;
    padding: 10px;
}

/* 语言按钮（首页含 svg 地球图标）：宽度自适应文字内容，
   地球图标随语言名称一起移动（长语言整体变宽、短语言整体收紧），
   文字强制单行不折行 */
.header .search svg + .lang-curr {
    width: auto;
    min-width: 0;
    white-space: nowrap;
    justify-content: center;
    box-sizing: border-box;
}
.header .search .lang-curr span {
    white-space: nowrap;
}

.header .search .lang-curr i {
    margin-left: 12px;
    display: none; /* 无下拉，去掉下拉箭头 */
    width: 8px;
    height: 8px;
    border: solid 2px #555;
    border-width: 2px 0 0 2px;
    cursor: pointer;
    transform: rotate(
        -135deg);
    -webkit-transform: rotate(
        -135deg);
    -o-transform: rotate(-135deg);
    -ms-transform: rotate(-135deg);
    -moz-transform: rotate(-135deg);
}

.header .search .lang-select {
    position: absolute;
    z-index: 100000;
    display: none !important; /* 语言切换已改为直接点击切换，隐藏下拉框 */
    width: 80px;
    min-width: 50px;
    padding: 0px 20px;
    margin: 0px 0 0;
    font-size: 14px;
    text-align: left;
    list-style: none;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    border: none;
    border-radius: 0;
    background: #fff;
    box-sizing: content-box;
     -webkit-box-shadow: 0 6px 12px rgb(0 0 0 / 18%);
    box-shadow: none;
    line-height: 30px;
}

.header .search .lang-select a:hover {
    color: #FF0000FF;
}

* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.path_guide {
    padding: 20px 0;
    background: #f0f0f0
}

.path_guide .breadcrumb {
    width: 1200px;
    background: none;
    margin: 0 auto;
    padding: 0;
    color: #666;
}

.path_guide .breadcrumb a, .path_guide .breadcrumb a:hover {
    color: #666;
}

.path_guide .breadcrumb > li + li:before {
    content: ">\00a0"
}

.footer {
    width: 100%;
    margin-top: 60px;
    padding: 35px 10% 35px;
    background: #efefef;
    color: #6a6a6a;
}

.footer > div {
    margin: 0 auto;
    width: 100%;
    max-width: 1200px;
}

.footer h5 {
    color: #000;
}

.footer h5 a, .footer h5 a:hover {
    color: #000;
}

.footer .spanline {
    border-left: solid 1px #b7b7b7
}

.foot_nav .list li {
    padding: 5px 0
}

.foot_nav .list li a {
    color: #6a6a6a;
    white-space: nowrap
}

.foot_nav > div {
    min-height: 150px;
    margin-bottom: 15px
}

.footer .nopad {
    padding: 0
}

.footer .other_info {
    margin: 0 auto;
    padding: 0;
    line-height: 29px;
}
.footer .other_info a, .footer .other_info a:hover {
    color: #6a6a6a;
}

.footer .other_info .lang {
    position: relative;
    padding: 6px 0 6px 35px;
    margin-top: 22px;
    background: url("https://heytalk-oa.oss-cn-beijing.aliyuncs.com/web-image/peijie/lang.gif") no-repeat 0 center;
}

.footer .other_info .lang span {
    cursor: pointer
}

.footer .other_info .lang i {
    position: absolute;
    right: -18px;
    top: 9px;
    width: 8px;
    height: 8px;
    border: solid 2px #555;
    border-width: 2px 0 0 2px;
    cursor: pointer;
    transform: rotate(-135deg);
    -webkit-transform: rotate(-135deg);
    -o-transform: rotate(-135deg);
    -ms-transform: rotate(-135deg);
    -moz-transform: rotate(-135deg)
}

.footer .ftNav {
    text-align: right;
}

.footer .ftNav a {
    margin-left: 20px;
    color: #6a6a6a;
}

/*childNav*/
.dropdown-menu {
    position: absolute;
    top: 100%;
    left: -20px;
    z-index: 100000;
    display: none;
    width: 100%;
    min-width: 50px;
    padding: 0px 20px;
    margin: 0px 0 0;
    font-size: 14px;
    text-align: left;
    list-style: none;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    border: none;
    border-radius: 0;
    background: #f9f9f9;
    box-sizing: content-box;
    box-shadow: none;
}

.childNav01 {
    overflow: hidden;
    width: 100%;
}

.childNav01 .left {
    width: 100%;
    background: #f9f9f9;
    padding-top: 30px;
    padding-bottom: 30px;
}

.childNav01 .left dl {
    margin: 0px auto;
    width: 100%;
}

.childNav01 .left dl dd {
    font-size: 14px;
    height: auto;
    min-height: 50px;
    text-align: center;
    line-height: 1.6;
    padding: 12px 10px;
    border-bottom: 1px solid #e5e5e5;
    white-space: normal;
    word-break: break-word;
}

.childNav01 .left dl dd a {
    display: block;
    white-space: normal;
    word-break: break-word;
    line-height: 1.6;
}

.childNav01 .left dl dd:last-child {
    border-bottom: none;
}

.childNav02 {
    overflow: hidden;
}

.childNav02 .left {
    background: #f9f9f9;
    padding-bottom: 30px;
}

.childNav02 .left dl {
    float: left;
    width: 27%;
    margin: 30px 0;
    margin-left: 3%;
    margin-right: 3%;
}

.childNav02 .left dl dt {
    font-size: 14px;
    padding: 14px 0;
    line-height: 22px;
}

.childNav02 .left dl dt.level02 {
    border-bottom: 1px solid #bbb;
    font-weight: normal;
}

.childNav02 .left dl dd {
    font-size: 14px;
    padding: 10px 0;
    line-height: 20px;
    border-bottom: 1px solid #e5e5e5
}

.childNav02 .left dl dd a {
    display: block
}

.childNav03 {
    background: #fff;
    overflow: hidden;
    height: 400px;
}

.childNav03 .left {
    float: left;
    background: #f9f9f9;
    height: 400px;
}

.childNav03 .left dl {
    margin: 50px;
}

.childNav03 .left dl dd {
    font-size: 14px;
    height: 50px;
    line-height: 50px;
    padding: 0 20px;
    border-bottom: 1px solid #e5e5e5
}

.childNav03 .left dl dd a {
    display: block
}

.childNav03 .right {
    float: left;
    padding: 67px 0;
    background: #fff;
    color: #000;
}

.childNav03 .right h5 {
    margin: 0 30px;
    font-size: 16px;
    color: #000;
    margin-bottom: 30px;
}

.childNav03 .right p {
    margin: 0 30px;
    color: #000;
    font-size: 12px;
    line-height: 150%;
}

.childNav04 {
    background: #fff;
    overflow: hidden;
    height: 400px;
}

.childNav04 .left {
    float: left;
    background: #f9f9f9;
    height: 400px;
}

.childNav04 .left dl {
    margin: 50px;
}

.childNav04 .left dl dd {
    font-size: 14px;
    height: 50px;
    line-height: 50px;
    padding: 0 20px;
    border-bottom: 1px solid #e5e5e5
}

.childNav04 .left dl dd a {
    display: block
}

.childNav04 .right {
    float: left;
    padding: 67px 0;
    background: #fff;
    color: #000;
}

.childNav04 .right h5 {
    margin: 0 30px;
    font-size: 16px;
    color: #000;
    margin-bottom: 30px;
}

.childNav04 .right p {
    margin: 0 30px;
    color: #000;
    font-size: 12px;
    line-height: 150%;
}

.childNav05 {
    background: #fff;
    overflow: hidden;
    height: 400px;
}

.childNav05 .left {
    float: left;
    background: #f9f9f9;
    height: 400px;
}

.childNav05 .left dl {
    margin: 50px;
}

.childNav05 .left dl dd {
    font-size: 14px;
    height: 50px;
    line-height: 50px;
    padding: 0 20px;
    border-bottom: 1px solid #e5e5e5
}

.childNav05 .left dl dd a {
    display: block
}

.childNav05 .right {
    float: left;
    padding: 67px 0;
    background: #fff;
    color: #000;
}

.childNav05 .right h5 {
    margin: 0 30px;
    font-size: 16px;
    color: #000;
    margin-bottom: 30px;
}

.childNav05 .right p {
    margin: 0 30px;
    color: #000;
    font-size: 12px;
    line-height: 150%;
}

.header .menu span.abg {
    background-color: #ff3333;
    display: block;
    height: 2px;
    left: 0;
    padding: 0 30px;
    position: absolute;
    top: 58px;
    transition: all 0.4s ease 0s;
    width: 19%;
    z-index: 1;
}

.pull-right {
    margin-bottom: 40px;
}

.other_info .info {
    display: flex;
    flex-direction: column;
    align-items: center;
    flex-wrap: wrap;
    font-size: 15px;
}

/* 页脚联系方式：电话/微信/邮箱 横向三项之间留间距（移动端 span 为 block 竖排，不受影响） */
.other_info .info div span {
    margin-right: 20px;
}
.other_info .info div span:last-child {
    margin-right: 0;
}

.footer_news_title{
    width: 170px;
    display: inline-block;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}

/* W3C 合规：导航下拉 dl 补齐空 <dt> 后隐藏（不影响视觉） */
.childNavBox dl dt {
    display: none;
}


/* 全站统一：标题（h2/h3）与紧随其后的段落间距 38px（W3C 合规，桌面端+移动端共用） */
h2 + p,
h3 + p,
.section-title + p {
    margin-top: 38px;
}
