:root{--ink:#17202b;--text:#2f3a47;--muted:#697584;--line:#dce3e8;--soft:#f6f8fa;--paper:#fff;--teal:#006f73;--navy:#102235;--gold:#a77b2d}
*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",Arial,sans-serif;color:var(--text);line-height:1.68;background:#fff}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}
.wrap{width:min(1180px,calc(100% - 48px));margin:0 auto}.topbar{background:var(--navy);color:rgba(255,255,255,.72);font-size:13px}.topbar .wrap{min-height:36px;display:flex;justify-content:space-between;align-items:center}
header{position:sticky;top:0;z-index:10;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}nav{min-height:76px;display:grid;grid-template-columns:260px 1fr auto;gap:28px;align-items:center}
.brand{display:flex;align-items:center;gap:12px;font-weight:760;font-size:19px;color:var(--ink)}.mark{width:42px;height:42px;display:grid;place-items:center;background:var(--teal);color:#fff;font-size:13px;font-weight:800}.brand small{display:block;color:var(--muted);font-size:12px;font-weight:500;line-height:1.1;margin-top:2px}
.links{display:flex;justify-content:center;gap:26px;font-size:15px;color:#344253}.cta{height:42px;padding:0 16px;display:inline-flex;align-items:center;border:1px solid var(--teal);color:var(--teal);font-weight:700;font-size:14px}
.page-hero{background:linear-gradient(180deg,#fff 0%,#f7fafb 100%);border-bottom:1px solid var(--line);padding:58px 0}.breadcrumb{color:var(--muted);font-size:14px;margin-bottom:18px}.kicker{margin:0 0 12px;color:var(--teal);font-size:14px;font-weight:800}h1{margin:0;color:var(--ink);font-size:clamp(36px,5vw,58px);line-height:1.12;letter-spacing:0}h2{margin:0;color:var(--ink);font-size:30px;line-height:1.25}.lead{max-width:760px;margin:18px 0 0;color:var(--muted);font-size:17px}
.section{padding:54px 0}.toolbar{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:24px}.search{width:min(420px,100%);height:44px;border:1px solid var(--line);padding:0 14px;font-size:15px}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{border:1px solid var(--line);background:#fff;min-height:300px;display:grid;grid-template-rows:auto 1fr}.thumb{width:100%;aspect-ratio:16/10;object-fit:cover;background:var(--soft)}.card-body{padding:22px;display:grid;align-content:space-between;gap:18px}.tag{width:fit-content;padding:3px 8px;background:#f4efe7;color:var(--gold);font-size:13px;font-weight:760}.card h3{margin:12px 0 8px;color:var(--ink);font-size:20px;line-height:1.35}.card p{margin:0;color:var(--muted);font-size:15px}.meta{color:var(--muted);font-size:14px}
.detail{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:46px;align-items:start}.article{max-width:800px}.article-title{font-size:clamp(34px,4.4vw,52px)}.article-meta{display:flex;flex-wrap:wrap;gap:14px;margin:20px 0 28px;color:var(--muted);font-size:14px}.cover{width:100%;max-height:460px;object-fit:cover;border:1px solid var(--line);margin:0 0 30px}.content{font-size:17px;color:#344253}.content p{margin:0 0 18px}.content img{height:auto;margin:24px 0;border:1px solid var(--line)}
.side{position:sticky;top:102px;border:1px solid var(--line);background:#fff;padding:24px}.side h3{margin:0 0 14px;color:var(--ink);font-size:18px}.side p{margin:8px 0;color:var(--muted)}.btn{min-height:44px;padding:10px 16px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);font-weight:750;font-size:15px;background:#fff}.btn.primary{background:var(--teal);border-color:var(--teal);color:#fff}.full{width:100%;margin-top:16px}
.empty{padding:34px;border:1px solid var(--line);background:var(--soft);color:var(--muted)}
footer{background:#111923;color:rgba(255,255,255,.72);padding:42px 0 28px;margin-top:40px}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:36px}footer h2,footer h3{color:#fff;margin:0 0 12px}footer p{margin:6px 0}.copyright{margin-top:28px;padding-top:18px;border-top:1px solid rgba(255,255,255,.12);font-size:13px}
@media(max-width:920px){nav{grid-template-columns:1fr auto}.links{display:none}.grid{grid-template-columns:repeat(2,1fr)}.detail,.footer-grid{grid-template-columns:1fr}.side{position:static}}
@media(max-width:620px){.topbar{display:none}.wrap{width:calc(100% - 32px)}nav{min-height:66px}.cta{display:none}.page-hero{padding:42px 0}.grid{grid-template-columns:1fr}.toolbar{display:block}.search{margin-top:14px}.section{padding:42px 0}}

/* Fix preview news list: hide backend default category such as "general". */
.grid .card .tag {
  display: none !important;
}

/* Normalize article body typography. Some imported content carries large inline styles. */
.content,
.content p,
.content div,
.content span,
.content li,
.content font {
  font-size: 17px !important;
  line-height: 1.78 !important;
}

.content h1,
.content h1 *,
.content .content-title {
  font-size: 26px !important;
  line-height: 1.35 !important;
  margin: 30px 0 14px !important;
  color: var(--ink) !important;
}

.content h2,
.content h2 * {
  font-size: 23px !important;
  line-height: 1.36 !important;
  margin: 28px 0 12px !important;
  color: var(--ink) !important;
}

.content h3,
.content h3 * {
  font-size: 20px !important;
  line-height: 1.4 !important;
  margin: 24px 0 10px !important;
  color: var(--ink) !important;
}

.content h4,
.content h4 * {
  font-size: 18px !important;
  line-height: 1.45 !important;
  margin: 20px 0 8px !important;
  color: var(--ink) !important;
}
