:root{
  --red:#DE2910; --red-deep:#B31F0C; --red-tint:#FDF1EF;
  --ink:#0F172A; --ink-soft:#334155; --gray:#64748B; --gray-light:#94A3B8;
  --line:#E2E8F0; --paper:#F8FAFC; --gold:#9C7A2E; --blue:#1D4ED8;
  --font-display:"PingFang SC","Microsoft YaHei",-apple-system,sans-serif;
  --font-body:"PingFang SC","Microsoft YaHei",-apple-system,sans-serif;
}
*{ box-sizing:border-box; }
body{ margin:0; font-family:var(--font-body); color:var(--ink); background:#fff; line-height:1.8; }
a{ color:var(--red); }
.wrap{ max-width:760px; margin:0 auto; padding:0 32px; }
@media (max-width:640px){ .wrap{ padding:0 20px; } }

header{ border-top:6px solid var(--red); border-bottom:1px solid var(--line); background:#fff; position:sticky; top:0; z-index:5; }
.top-bar{ display:flex; align-items:center; justify-content:space-between; height:66px; }
.brand{ display:flex; align-items:center; gap:10px; font-weight:800; font-size:16px; text-decoration:none; color:var(--ink); }
.brand .mark{ width:28px; height:28px; border-radius:2px; background:var(--red); color:#fff; display:flex; align-items:center; justify-content:center; font-size:12px; font-weight:700; }
.back-link{ font-size:13px; color:var(--gray); text-decoration:none; }
.back-link:hover{ color:var(--red); }

.report-hero{ padding:56px 0 32px; }
.report-tag{ display:inline-block; font-size:11.5px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--red-deep); background:var(--red-tint); padding:5px 12px; border-radius:2px; margin-bottom:18px; }
.report-hero h1{ font-family:var(--font-display); font-size:clamp(26px,3.6vw,38px); font-weight:900; line-height:1.3; margin:0 0 16px; letter-spacing:-.01em; }
.report-meta{ display:flex; gap:20px; flex-wrap:wrap; font-size:13px; color:var(--gray); border-top:1px solid var(--line); border-bottom:1px solid var(--line); padding:14px 0; margin-top:24px; }

.summary-box{ background:var(--paper); border-left:3px solid var(--red); padding:24px 26px; margin:32px 0; border-radius:0 6px 6px 0; }
.summary-box h3{ margin:0 0 10px; font-size:14px; text-transform:uppercase; letter-spacing:.05em; color:var(--red-deep); }
.summary-box p{ margin:0; font-size:14.5px; color:var(--ink-soft); }

article h2{ font-family:var(--font-display); font-size:21px; margin:44px 0 14px; padding-top:6px; border-top:1px solid var(--line); }
article h2:first-of-type{ border-top:none; }
article h3{ font-size:16px; margin:26px 0 10px; }
article p{ font-size:15px; color:var(--ink-soft); margin:0 0 16px; }
article ul, article ol{ padding-left:20px; margin:0 0 16px; }
article li{ font-size:15px; color:var(--ink-soft); margin-bottom:8px; }
.pull-quote{ font-family:var(--font-display); font-size:19px; font-weight:700; color:var(--ink); border-left:3px solid var(--red); padding:6px 0 6px 22px; margin:30px 0; line-height:1.6; }

.exhibit{ margin:30px 0; border:1px solid var(--line); border-radius:8px; padding:24px 26px; background:var(--paper); }
.exhibit-label{ font-size:11.5px; font-weight:700; text-transform:uppercase; letter-spacing:.06em; color:var(--gray); margin-bottom:14px; }
.exhibit svg{ width:100%; height:auto; display:block; }
.exhibit-caption{ font-size:12.5px; color:var(--gray); margin-top:12px; }

.takeaway-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--line); border:1px solid var(--line); margin:34px 0; }
@media (max-width:700px){ .takeaway-grid{ grid-template-columns:1fr; } }
.takeaway{ background:#fff; padding:22px 20px; }
.takeaway b{ display:block; font-family:var(--font-display); font-size:22px; color:var(--red); margin-bottom:6px; }
.takeaway span{ font-size:13px; color:var(--gray); }

.cta-box{ background:var(--ink); color:#fff; border-radius:8px; padding:36px 32px; margin:48px 0 20px; text-align:center; }
.cta-box h3{ font-family:var(--font-display); font-size:20px; margin:0 0 10px; }
.cta-box p{ color:rgba(255,255,255,.65); font-size:14px; margin:0 0 20px; }
.btn{ display:inline-flex; padding:11px 24px; border-radius:4px; background:var(--red); color:#fff; text-decoration:none; font-weight:700; font-size:14px; }
.btn:hover{ background:var(--red-deep); }

footer{ background:var(--ink); color:rgba(255,255,255,.4); font-size:12.5px; text-align:center; padding:20px 0; margin-top:40px; }
