.site-page {
    width: 1200px;
    margin: 18px auto 0;
    color: #555;
}

.site-page-breadcrumb {
    height: 42px;
    padding-left: 18px;
    border: 1px solid #e5e5e5;
    line-height: 42px;
    color: #999;
    background: #fafafa;
}

.site-page-breadcrumb a {
    color: #47b751;
}

.site-page-box {
    display: flex;
    min-height: 430px;
    margin-top: 15px;
    border: 1px solid #e5e5e5;
    background: #fff;
}

.site-page-menu {
    flex: 0 0 220px;
    padding-top: 24px;
    border-right: 1px solid #e5e5e5;
    background: #f7f7f7;
}

.site-page-menu a {
    position: relative;
    display: block;
    height: 52px;
    padding-left: 42px;
    border-bottom: 1px solid #e8e8e8;
    line-height: 52px;
    color: #555;
    font-size: 16px;
}

.site-page-menu a:first-child {
    border-top: 1px solid #e8e8e8;
}

.site-page-menu a:hover,
.site-page-menu a.active {
    color: #fff;
    background: #47b751;
}

.site-page-menu a em {
    position: absolute;
    top: 21px;
    right: 22px;
    width: 8px;
    height: 8px;
    border-top: 2px solid currentColor;
    border-right: 2px solid currentColor;
    transform: rotate(45deg);
}

.site-page-content {
    flex: 1;
    padding: 30px 44px 50px;
}

.site-page-content h1 {
    height: 50px;
    border-bottom: 2px solid #47b751;
    line-height: 42px;
    color: #333;
    font-size: 24px;
    font-weight: 500;
}

.site-page-copy {
    padding-top: 24px;
    line-height: 2;
    color: #555;
    font-size: 15px;
}

.site-page-copy p + p {
    margin-top: 14px;
}

.site-page-copy a {
    color: #47b751;
}

.legal-copy p {
    margin: 0 0 20px;
}

.publish-copy h2 {
    margin-top: 28px;
    color: #333;
    font-size: 17px;
}

.publish-copy h2 span {
    color: #e53935;
    font-size: 15px;
}

.publish-copy h3 {
    margin-top: 22px;
    color: #333;
    font-size: 16px;
}

.publish-copy ul {
    margin-top: 8px;
    padding-left: 22px;
    list-style: disc;
}

.publish-copy li {
    margin-top: 6px;
}

/* 信息页共用 PC 模板，小屏幕下改为自然宽度，避免页脚链接打开 1200px 页面。 */
@media (max-width: 1199px) {
    body { min-width: 0; }
    #header, #header *, #footer, #footer *, .site-page, .site-page * { box-sizing: border-box; }
    #header dt, #nav li, #footer div, #footer p { width: 100%; }
    #header #logo { height: 84px; padding: 0 12px !important; }
    #header #logo a { width: 176px; height: 52px; margin-top: 16px; }
    #nav { height: auto; }
    #nav li { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
    #nav li::before, #nav li::after { display: none; content: none; }
    #nav a { float: none; width: auto; min-width: 0; font-size: 14px; line-height: 44px; white-space: nowrap; }
    .site-page { width: auto; margin: 12px; }
    .site-page-breadcrumb { height: auto; min-height: 42px; padding: 8px 12px; line-height: 24px; }
    .site-page-box { display: block; min-height: 0; margin-top: 12px; }
    .site-page-menu { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 0; border-right: 0; border-bottom: 1px solid #e5e5e5; }
    .site-page-menu a { min-height: 44px; height: auto; padding: 10px 12px; line-height: 24px; font-size: 14px; }
    .site-page-menu a:first-child { border-top: 0; }
    .site-page-menu a em { display: none; }
    .site-page-content { min-width: 0; padding: 20px 16px 28px; }
    .site-page-content h1 { height: auto; padding-bottom: 10px; line-height: 32px; font-size: 22px; }
    .site-page-copy { padding-top: 16px; overflow-wrap: anywhere; font-size: 14px; }
    #footer { padding: 12px; }
    #footer div, #footer p { margin: 8px 0; line-height: 1.9; overflow-wrap: anywhere; }
    #footer a { display: inline-block; max-width: 100%; margin: 0 6px; padding: 4px 0; }
}
