:root { --bg:#101014; --ink:#eeeae4; --muted:#9b97a4; --line:#2a2832; --accent:#7d8cff; }
* { box-sizing:border-box; }
body { margin:0; background:var(--bg); color:var(--ink); font-family:Georgia, Palatino, serif; font-size:1.125rem; line-height:1.6; }
a { color:inherit; }
.wrap { max-width:40rem; margin:0 auto; padding:1.2rem 1.2rem 4rem; }
header, nav, .kicker, .cta, footer { font-family:ui-sans-serif, system-ui, sans-serif; }
header { display:flex; justify-content:space-between; gap:1rem; align-items:baseline; font-size:.75rem; letter-spacing:.12em; text-transform:uppercase; }
header a, nav a { text-decoration:none; color:var(--muted); }
nav { display:flex; gap:.8rem; }
h1 { margin:.4rem 0 .7rem; font-weight:500; font-size:clamp(2rem,6.5vw,3.2rem); line-height:1.02; letter-spacing:-.03em; }
h2 { font-weight:500; font-size:1.35rem; margin:1.6rem 0 .35rem; }
.kicker { color:var(--accent); letter-spacing:.16em; text-transform:uppercase; font-size:.72rem; margin:1.6rem 0 .4rem; }
.lede { color:var(--ink); font-size:1.22rem; }
p, li { color:var(--muted); }
ul { padding-left:1.1rem; }
.card { border-top:1px solid var(--line); padding:.8rem 0; }
.card b { display:block; font-weight:500; color:var(--ink); }
.cta { display:inline-block; margin-top:.8rem; background:var(--ink); color:var(--bg); text-decoration:none; padding:.75rem 1rem; }
footer { margin-top:2.8rem; padding-top:1rem; border-top:1px solid var(--line); color:var(--muted); font-size:.8rem; }
footer a { color:var(--ink); }
