/*
 * 誉为官网全站字体规范
 * 在页面与页脚局部样式之后加载，用于收口历史页面中零散的 9–13px 小字、
 * 过重字重与过宽英文字符间距。视觉层级保持：标题 > 正文 > 辅助信息。
 */

:root {
    --yw-text: #24292e;
    --yw-text-body: #596168;
    --yw-text-muted: #747c84;
    --yw-accent: #e95724;
    --yw-font: "Microsoft YaHei", "PingFang SC", "Noto Sans CJK SC", Arial, sans-serif;
}

html {
    font-size: 16px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}

body {
    color: var(--yw-text);
    font-family: var(--yw-font) !important;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.65;
}

/* 标题不再使用大面积 600/700 粗体，中文以 400–500 为主。 */
h1,
h2,
h3,
h4,
h5,
h6 {
    color: var(--yw-text);
    font-family: var(--yw-font) !important;
    font-weight: 500 !important;
    letter-spacing: 0 !important;
}

h1 { line-height: 1.18; }
h2 { line-height: 1.28; }
h3 { line-height: 1.4; }

[class$="__title"],
[class$="-title"],
[class$="__name"],
[class$="-name"] {
    font-weight: 500 !important;
}

strong,
b {
    font-weight: 600;
}

/* 正文统一到舒适阅读尺寸；卡片正文也不再缩成说明书小字。 */
p {
    font-size: 16px !important;
    font-weight: 400 !important;
}

[class$="__desc"],
[class$="-desc"],
[class$="__excerpt"],
[class$="-excerpt"],
[class$="__text"],
[class$="-text"],
[class$="__note"],
[class$="-note"],
[class$="__hint"],
[class$="-hint"] {
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 1.75 !important;
    letter-spacing: 0 !important;
}

/* 英文眉题、编号、分类标签：保留识别感，但不再使用 9/10px 与夸张字距。 */
[class$="__label"],
[class$="-label"],
[class$="__lbl"],
[class$="-lbl"],
[class$="__tag"],
[class$="-tag"],
[class$="__type"],
[class$="-type"],
[class$="__eyebrow"],
[class$="-eyebrow"],
[class$="__kicker"],
[class$="-kicker"],
[class$="__en"],
[class$="-en"] {
    font-size: 13px !important;
    font-weight: 500 !important;
    line-height: 1.45 !important;
    letter-spacing: 1.2px !important;
}

/* 日期、地点、卡片元信息属于辅助层，但仍需清楚可读。 */
[class$="__meta"],
[class$="-meta"],
[class$="__loc"],
[class$="-loc"],
[class$="__role"],
[class$="-role"] {
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.65 !important;
    letter-spacing: .25px !important;
}

[class$="__date"],
[class$="-date"],
[class$="__cat"],
[class$="-cat"],
[class$="__dir"],
[class$="-dir"],
[class$="__foot"],
[class$="-foot"],
[class$="__cap"],
[class$="-cap"],
[class$="__unit"],
[class$="-unit"],
[class$="__no"],
[class$="-no"] {
    font-size: 13px !important;
    font-weight: 400 !important;
    letter-spacing: .5px !important;
}

[class$="__sub"],
[class$="-sub"],
[class$="__pt"],
[class$="-pt"],
[class$="__spec"],
[class$="-spec"],
[class$="-hd__r"],
.page-hero__crumb,
.ct-breadcrumb {
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.65 !important;
}

table td,
table th {
    font-size: 14px !important;
    font-weight: 400 !important;
}

small,
time,
figcaption {
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.6;
}

/* 导航、按钮、筛选项与表单使用同一交互字号。 */
.site-nav__link,
.site-header__lang-link,
.m-nav__link,
.m-nav__sub-link,
button,
input,
select,
textarea {
    font-family: var(--yw-font) !important;
    font-size: 15px !important;
    font-weight: 400 !important;
}

label,
.ci-field label,
.form-field label {
    font-size: 14px !important;
    font-weight: 500 !important;
    letter-spacing: .4px !important;
}

/* 常见“查看更多 / 返回 / 筛选”文字不再小于正文两个层级。 */
[class$="__more"],
[class$="-more"],
[class$="__read"],
[class$="-read"],
[class$="__btn"],
[class$="-btn"],
.case-filter a {
    font-size: 14px !important;
    font-weight: 500 !important;
    letter-spacing: .7px !important;
}

/* 首页：说明文字、新闻与核心业务卡片。 */
.about-sec p,
.service-sec p,
.news-sec p,
.partner-sec p,
.svc-card p,
.project-card p,
.news-item p,
.news-featured p {
    font-size: 15px !important;
    line-height: 1.78 !important;
}

/* 关于我们 / 储能 / 项目列表等新页面的细小信息。 */
.abx-label,
.ess-label,
.case-label,
.abx-year__num,
.ess-card__num,
.case-card__type,
.om-step span,
.hz-step span {
    font-size: 13px !important;
    font-weight: 500 !important;
    letter-spacing: 1.2px !important;
}

.abx-year__text,
.abx-value p,
.ess-card p,
.ess-flow__item span,
.ess-value__row p,
.case-card__meta {
    font-size: 15px !important;
    font-weight: 400 !important;
    line-height: 1.72 !important;
}

.abx-title,
.ess-title,
.case-title,
.om-title,
.hz-title,
.wy-title,
.fs-title {
    font-weight: 500 !important;
}

.abx-metric span {
    font-size: 14px !important;
    font-weight: 400 !important;
}

/* 老业务页仍有大量独立前缀，统一收口正文和步骤说明。 */
.path-step__desc,
.ep-step__desc,
.ep-cap__desc,
.ep-mode__desc,
.vp-rev__pt,
.vp-res__spec,
.station-feat,
.case-main__loc,
.case-sub__loc,
.case-mini__loc,
.cway__sub,
.form-note,
.sr-card__excerpt,
.nd-author__desc,
.ci-way__sub,
.ci-note,
.ck-hint {
    font-size: 15px !important;
    font-weight: 400 !important;
    line-height: 1.7 !important;
    letter-spacing: 0 !important;
}

.ep-step__num,
.ep-epc-step__num,
.hz-step span,
.om-step span,
.dp-case__type,
.nl-card__type,
.sr-card__type,
.mp-card__tag,
.case-main__type,
.case-sub__type,
.case-mini__type {
    font-size: 13px !important;
    font-weight: 500 !important;
    letter-spacing: 1.1px !important;
}

/* 新闻详情正文需要比普通卡片更宽松。 */
.nd-article__body,
.nd-article__body p,
.article-content,
.article-content p {
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 1.9 !important;
}

/* 页眉、页脚辅助内容同样清晰，但低于正文层级。 */
.site-nav__submenu-link,
.site-footer,
.site-footer__contact-line,
.site-footer__nav-list a {
    font-size: 14px !important;
    font-weight: 400 !important;
}

.site-footer__contact-title,
.site-footer__nav-group-title {
    font-size: 16px !important;
    font-weight: 500 !important;
}

.site-footer__copy,
.site-footer__icp,
.site-footer__icp a,
.site-footer__qr p {
    font-size: 13px !important;
    font-weight: 400 !important;
}

.scroll-indicator__text {
    font-size: 12px !important;
    font-weight: 400 !important;
    letter-spacing: 1.5px !important;
}

@media (max-width: 768px) {
    body { font-size: 15px; }

    p,
    [class$="__desc"],
    [class$="-desc"],
    [class$="__excerpt"],
    [class$="-excerpt"],
    [class$="__text"],
    [class$="-text"] {
        font-size: 15px !important;
        line-height: 1.72 !important;
    }

    [class$="__label"],
    [class$="-label"],
    [class$="__lbl"],
    [class$="-lbl"],
    [class$="__tag"],
    [class$="-tag"],
    [class$="__type"],
    [class$="-type"],
    [class$="__eyebrow"],
    [class$="-eyebrow"],
    [class$="__kicker"],
    [class$="-kicker"],
    [class$="__en"],
    [class$="-en"] {
        font-size: 13px !important;
        letter-spacing: .9px !important;
    }

    button,
    input,
    select,
    textarea,
    .m-nav__link,
    .m-nav__sub-link {
        font-size: 15px !important;
    }
}
