/* cn pack: magazine full-width color bands, crimson + navy */
:root {
  --navy: #1b2a4a;
  --crimson: #c41e3a;
  --sand: #f8f1e7;
  --ink: #1b1b1b;
}
* { box-sizing: border-box; }
html, body { margin: 0; }
body {
  font-family: "Georgia", "Songti SC", "SimSun", serif;
  color: var(--ink);
  line-height: 1.85;
  background: #fff;
}
a { color: var(--crimson); }
.site-header { background: var(--navy); color: #fff; }
.wrap { width: min(1080px, calc(100% - 32px)); margin: 0 auto; }
.header-inner { display: flex; justify-content: space-between; align-items: baseline; min-height: 80px; }
.brand { font-size: 26px; letter-spacing: .08em; font-weight: 700; color: #fff; display: flex; gap: 10px; align-items: center; }
.nav { display: flex; gap: 18px; }
.nav a { color: #d7deea; text-decoration: none; font-family: "Segoe UI", "Microsoft YaHei", sans-serif; }
.nav a.current { color: #fff; border-bottom: 2px solid var(--crimson); }
.hero { padding: 48px 0 20px; }
.hero h1 { font-size: 40px; line-height: 1.25; max-width: 16em; margin: 0 0 16px; }
.lead { font-size: 18px; max-width: 40em; }
.btn-row { display: flex; gap: 12px; flex-wrap: wrap; font-family: "Segoe UI", "Microsoft YaHei", sans-serif; }
.btn { display: inline-block; padding: 12px 22px; background: var(--crimson); color: #fff; text-decoration: none; font-weight: 700; }
.btn-sub { background: transparent; color: var(--navy); border: 1px solid var(--navy); }
.band { padding: 36px 0; }
.band-sand { background: var(--sand); }
.band-navy { background: var(--navy); color: #f4efe6; }
.band-navy a { color: #ffb3c0; }
.band h2 { font-size: 28px; margin: 0 0 12px; }
.grid-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; font-family: "Segoe UI", "Microsoft YaHei", sans-serif; }
.card { border-top: 4px solid var(--crimson); padding-top: 10px; }
table { width: 100%; border-collapse: collapse; font-family: "Segoe UI", "Microsoft YaHei", sans-serif; background: #fff; color: var(--ink); }
th, td { border-bottom: 1px solid #d8cfc2; padding: 10px 8px; text-align: left; }
th { color: var(--crimson); }
.steps { padding-left: 0; font-family: "Segoe UI", "Microsoft YaHei", sans-serif; }
.steps li { list-style: none; margin: 0 0 14px; padding-bottom: 14px; border-bottom: 1px dotted #c8b8a2; }
.news-item { display: grid; grid-template-columns: 110px 1fr; gap: 16px; padding: 14px 0; border-top: 1px solid #e5d8c8; font-family: "Segoe UI", "Microsoft YaHei", sans-serif; }
.news-date { font-variant: small-caps; color: var(--crimson); }
.faq dt { font-weight: 700; margin-top: 16px; font-family: "Segoe UI", "Microsoft YaHei", sans-serif; }
.faq dd { margin: 6px 0 0; }
.cta-band { padding: 8px 0; }
.site-footer { background: #0f1728; color: #c9c1b4; padding: 28px 0; font-family: "Segoe UI", "Microsoft YaHei", sans-serif; font-size: 14px; }
.foot-safe { color: #f3d3a2; }
@media (max-width: 800px) {
  .grid-2, .news-item { grid-template-columns: 1fr; }
  .hero h1 { font-size: 30px; }
}
