:root{
  --page-bg:#f6f8fb;
  --card:#ffffff;
  --text:#0f172a;
  --muted:#64748b;
  --line:#e5e7eb;
  --brand:#0f172a;
  --accent:#2563eb;
  --shadow:0 10px 25px rgba(15,23,42,.08);
  --radius:18px;
}
*{ box-sizing:border-box; }
body{ margin:0; font-family: system-ui, -apple-system, Segoe UI, sans-serif; background:var(--page-bg); color:var(--text); }
.page-shell{ max-width:980px; margin:0 auto; padding:20px 16px; }
.hero{ background:linear-gradient(145deg, rgba(239,246,255,.96), rgba(240,253,244,.96)); border:1px solid rgba(15,23,42,.08); border-radius:24px; box-shadow:var(--shadow); padding:20px; }
.eyebrow{ margin:0; font-size:12px; letter-spacing:.12em; text-transform:uppercase; color:#475569; }
h1{ margin:8px 0 0; font-size:34px; line-height:1.1; letter-spacing:-.04em; }
.lead{ margin:12px 0 0; max-width:760px; font-size:15px; line-height:1.8; color:#334155; }
.heroMedia{ margin-top:16px; border-radius:18px; overflow:hidden; border:1px solid rgba(15,23,42,.08); background:#fff; }
.heroMedia img{ width:100%; display:block; height:auto; }
.heroActions{ margin-top:16px; display:flex; gap:8px; flex-wrap:wrap; }
.heroActions a, .footerLinks a, .homeLink{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:8px 12px;
  border-radius:999px;
  text-decoration:none;
  border:1px solid rgba(15,23,42,.08);
  background:#fff;
  color:var(--text);
  font-weight:700;
}
.heroActions a.primary{ background:var(--brand); color:#fff; border-color:var(--brand); }
.contentCard{ margin-top:16px; background:var(--card); border:1px solid var(--line); border-radius:var(--radius); box-shadow:var(--shadow); padding:18px; }
.contentCard h2{ margin:20px 0 8px; font-size:20px; }
.contentCard h2:first-child{ margin-top:0; }
.contentCard p, .contentCard li{ color:#334155; font-size:14px; line-height:1.8; }
.contentCard ul, .contentCard ol{ margin:0; padding-left:20px; }
.contentCard p{ margin:0 0 12px; }
.contentCard p:last-child{ margin-bottom:0; }
.note{ padding:12px 14px; border-radius:14px; background:#f8fafc; border:1px solid #e2e8f0; color:#334155; font-size:13px; line-height:1.7; }
.split{ display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.footerLinks{ display:flex; gap:8px; flex-wrap:wrap; padding-top:0; padding-bottom:24px; }
.homeLink{ margin-bottom:12px; }
.muted{ color:var(--muted); }
@media (max-width: 720px){
  h1{ font-size:28px; }
  .split{ grid-template-columns:1fr; }
}