@font-face {
    font-family: "AliHanYi";
    src: url("../fonts/ALiHanYiZhiNengHeiTi-2.ttf") format("truetype");
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: "SourceHanSansCN";
    src: url("../fonts/SourceHanSansCN-Regular.otf") format("opentype");
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: "SourceHanSansCN";
    src: url("../fonts/SourceHanSansCN-Medium.otf") format("opentype");
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: "SourceHanSansCN";
    src: url("../fonts/SourceHanSansCN-Bold.otf") format("opentype");
    font-weight: 700;
    font-style: normal;
}

html,
body {
    margin: 0;
    padding: 0;
    background: #f5f6f8;
    color: #333333;
    font-family: "SourceHanSansCN", "Microsoft YaHei", Arial, sans-serif;
}

body {
    min-width: 1200px;
}

a {
    color: inherit;
    text-decoration: none;
}

input,
button {
    font-family: inherit;
}

.page-container {
    width: 1200px;
    margin: 0 auto;
}

.site-topbar {
    height: 42px;
    background: linear-gradient(180deg, #5496d8 0%, #4287cb 100%);
    color: #ffffff;
    font-size: 12px;
}

.site-topbar-inner {
    overflow: hidden;
    line-height: 42px;
}

.site-welcome {
    float: left;
}

.site-platform-link {
    float: right;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 128px;
    height: 36px;
    background: linear-gradient(135deg, #006fbc 0%, #0274c4 100%);
    border-radius: 0 0 8px 8px;
    color: #ffffff;
    font-size: 16px;
    line-height: 36px;
    text-align: center;
}

.site-platform-link-icon {
    display: inline-block;
    margin-right: 6px;
    width: 16px;
    height: 16px;
    vertical-align: middle;
}

.site-hero {
    position: relative;
    height: 321px;
    overflow: hidden;
    background: #77b1e7;
}

.site-hero-bg {
    position: absolute;
    left: 50%;
    top: 0;
    width: 1920px;
    height: 363px;
    margin-left: -960px;
    max-width: none;
}

.site-hero-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.18) 0%, rgba(255, 255, 255, 0) 52%);
}

.site-hero-inner {
    position: relative;
    z-index: 1;
    padding-top: 15px;
    text-align: center;
}

.site-logo {
    width: 113px;
    height: 112px;
    margin: 0 auto;
}

.site-logo img {
    display: block;
    width: 113px;
    height: 112px;
}

.site-title-wrap {
    margin-top: 14px;
}

.site-title-image {
    display: block;
    width: 884px;
    height: 78px;
    margin: 0 auto;
}

.site-title {
    margin: 0;
    color: #ffffff;
    font-family: "AliHanYi", "SourceHanSansCN", sans-serif;
    font-size: 60px;
    line-height: 78px;
    text-shadow: 0 4px 6px rgba(0, 0, 0, 0.25);
}

.site-search {
    position: relative;
    width: 573px;
    height: 54px;
    margin: 16px auto 0;
    background: #ffffff;
    border-radius: 4px;
    box-shadow: 0 4px 18px rgba(3, 81, 160, 0.12);
    overflow: hidden;
}

.site-search-select {
    position: relative;
    float: left;
    width: 158px;
    padding-left: 48px;
    color: #606266;
    font-size: 16px;
    line-height: 54px;
    text-align: left;
    box-sizing: border-box;
}

.site-search-select-icon {
    position: absolute;
    right: 18px;
    top: 20px;
    width: 14px;
    height: 14px;
}

.site-search-divider {
    position: absolute;
    left: 158px;
    top: 17px;
    width: 1px;
    height: 20px;
    background: #cccccc;
}

.site-search-input {
    float: left;
    width: 300px;
    height: 54px;
    padding: 0 16px;
    border: 0;
    caret-color: #0273C3;
    color: #757575;
    font-size: 16px;
    line-height: 54px;
    outline: none;
    box-sizing: border-box;
}

.site-search-button {
    display: flex;
    align-items: center;
    justify-content: center;
    float: right;
    width: 115px;
    height: 54px;
    background: linear-gradient(135deg, #006fbc 0%, #0274c4 100%);
    color: #ffffff;
    font-size: 18px;
    text-align: center;
    box-sizing: border-box;
}

.site-search-button:hover {
    background: #FA9728;
}

.site-search-button-icon {
    display: block;
    width: 16px;
    height: 16px;
    margin-right: 8px;
}

.market-breadcrumb {
    padding: 18px 0;
    color: #a8b6c1;
    font-size: 14px;
    line-height: 21px;
}

.market-breadcrumb-home img {
    width: 15px;
    height: 16px;
    margin-right: 8px;
    vertical-align: -2px;
}

.market-breadcrumb-sep {
    margin: 0 8px;
}

.market-breadcrumb-current {
    color: #0273c3;
    font-weight: 700;
}

.market-content {
    float: right;
    width: 960px;
}

.market-layout {
    padding-bottom: 40px;
}

.market-filter {
    height: 103px;
    padding: 31px 40px;
    border-top: 2px solid #0273c3;
    background: #ffffff;
    white-space: nowrap;
    box-sizing: border-box;
}

.market-filter-label {
    float: left;
    color: #333333;
    font-size: 16px;
    line-height: 40px;
}

.market-filter-input {
    float: left;
    width: 500px;
    height: 40px;
    margin-left: 10px;
    padding: 0 16px;
    border: 1px solid #dcdfe6;
    border-radius: 4px;
    color: #333333;
    font-size: 14px;
    line-height: 40px;
    box-sizing: border-box;
}

.market-filter-input::-webkit-input-placeholder {
    color: #c0c4cc;
}

.market-filter-input:-ms-input-placeholder {
    color: #c0c4cc;
}

.market-filter-input::-ms-input-placeholder {
    color: #c0c4cc;
}

.market-filter-input::placeholder {
    color: #c0c4cc;
}

.market-filter-button {
    float: left;
    width: 90px;
    height: 40px;
    margin-left: 10px;
    border: 1px solid #dcdfe6;
    background: #ffffff;
    color: #606266;
    font-size: 14px;
    line-height: 38px;
    text-align: center;
    box-sizing: border-box;
}

.market-filter-button.is-primary {
    border-color: #0273c3;
    background: #0273c3;
    color: #ffffff;
}

.market-list-card {
    margin-top: 20px;
    background: #ffffff;
    box-shadow: 0 2px 14px rgba(4, 44, 101, 0.1);
}

.market-subject {
    position: relative;
    min-height: 105px;
    padding: 22px 24px 22px 40px;
    border: 1px solid transparent;
    background: #ffffff;
    box-sizing: border-box;
    cursor: pointer;
}

.market-subject:after {
    position: absolute;
    left: 24px;
    right: 24px;
    bottom: 0;
    border-bottom: 1px dashed #e5e5e5;
    content: "";
}

.market-subject:hover {
    border-color: #4281c6;
    border-bottom-style: solid;
}

.market-subject:hover:after,
.market-subject:last-child:after {
    display: none;
}

.market-subject-title-row {
    overflow: hidden;
}

.market-subject-title {
    float: left;
    max-width: 620px;
    overflow: hidden;
    color: #333333;
    font-size: 18px;
    font-weight: 700;
    line-height: 25px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.market-subject-title:visited {
    color: #333333;
}

.market-subject-title:hover,
.market-subject-title:active,
.market-subject-title:focus {
    color: #0273C3;
}

.market-subject-type {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    float: left;
    height: 22px;
    margin: 1px 0 0 10px;
    padding: 0 8px;
    border-radius: 4px;
    background: #ee903e;
    color: #ffffff;
    font-size: 13px;
    line-height: 22px;
}

.market-subject-info {
    overflow: hidden;
    margin-top: 14px;
}

.market-subject-main {
    float: left;
    width: 430px;
}

.market-subject-side {
    float: left;
    width: 220px;
    margin-left: 36px;
}

.market-subject-main,
.market-subject-side {
    color: #666666;
    font-size: 14px;
    line-height: 26px;
}

.market-subject-main span,
.market-subject-side span {
    display: block;
    white-space: nowrap;
}

.topic-error {
    display: none;
    margin-top: 16px;
    padding: 12px 16px;
    border-radius: 8px;
    background: #fff2f0;
    color: #c43c2f;
    font-size: 14px;
}
