:root {
  --bg: #0B0F0D; --surface: #141A16; --raised: #1B2420; --border: #25302A; --border-strong: #34423A;
  --text: #F2F5F3; --muted: #8FA097; --primary: #22C55E; --primary-dark: #6EE7A0; --primary-light: #123B24;
  --warning: #FBBF24; --warning-light: #3B2A0E; --on-primary: #04170B;
}
* { box-sizing: border-box; }
html { color-scheme: dark; }
body { margin: 0; background: var(--bg); color: var(--text); font: 16px/1.55 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; -webkit-font-smoothing: antialiased; }
a { color: var(--primary); text-decoration: none; }
a:hover { text-decoration: underline; }
.wrap { max-width: 880px; margin: 0 auto; padding: 0 20px; }
header.top { display: flex; align-items: center; justify-content: space-between; padding: 18px 0; }
.brand { display: flex; align-items: center; gap: 10px; color: var(--text); font-weight: 900; font-size: 22px; letter-spacing: -0.5px; }
.brand img { width: 36px; height: 36px; border-radius: 9px; }
nav a { color: var(--muted); margin-left: 18px; font-weight: 600; font-size: 15px; }
nav a:hover { color: var(--text); text-decoration: none; }
.hero { text-align: center; padding: 56px 0 40px; }
.hero h1 { font-size: clamp(34px, 7vw, 56px); line-height: 1.05; margin: 0 0 14px; letter-spacing: -1px; }
.hero h1 span { color: var(--primary); }
.hero p { color: var(--muted); font-size: 19px; max-width: 620px; margin: 0 auto 26px; }
.eyebrow { color: var(--primary-dark); font-weight: 700; letter-spacing: 2px; font-size: 13px; text-transform: uppercase; }
.btn { display: inline-block; background: var(--primary); color: var(--on-primary); font-weight: 700; padding: 14px 22px; border-radius: 12px; }
.btn:hover { text-decoration: none; filter: brightness(1.05); }
.btn.secondary { background: var(--surface); color: var(--text); border: 1px solid var(--border-strong); }
.grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 14px; margin: 18px 0; }
.card { background: var(--surface); border: 1px solid var(--border); border-radius: 16px; padding: 20px; }
.card h3 { margin: 0 0 8px; color: var(--primary); font-size: 19px; }
.card p { margin: 0; color: var(--muted); }
section { padding: 26px 0; }
section h2 { font-size: 28px; margin: 0 0 6px; letter-spacing: -0.5px; }
section > p.lede { color: var(--muted); margin: 0 0 8px; max-width: 640px; }
.tier { display: flex; justify-content: space-between; align-items: center; padding: 14px 0; border-bottom: 1px solid var(--border); }
.tier:last-of-type { border-bottom: 0; }
.tier .price { color: var(--primary); font-weight: 800; font-size: 26px; }
.tier small { display: block; color: var(--muted); }
.note { background: var(--warning-light); border: 1px solid var(--warning); color: var(--text); border-radius: 12px; padding: 14px 16px; }
.math { display: flex; justify-content: space-between; padding: 10px 0; border-bottom: 1px solid var(--border); }
.math strong { color: var(--primary); }
.total { display: flex; justify-content: space-between; padding: 14px 0 0; font-weight: 800; }
.total .big { color: var(--primary); font-size: 28px; }
.prose h2 { font-size: 22px; margin: 28px 0 8px; }
.prose h3 { font-size: 17px; margin: 20px 0 6px; color: var(--primary-dark); }
.prose p, .prose li { color: #C9D1CC; }
.prose ul { padding-left: 20px; }
.updated { color: var(--muted); font-size: 14px; }
footer { border-top: 1px solid var(--border); margin-top: 40px; padding: 26px 0 40px; color: var(--muted); font-size: 14px; display: flex; flex-wrap: wrap; gap: 10px 22px; align-items: center; justify-content: space-between; }
footer a { color: var(--muted); }
@media (max-width: 560px) { nav a { margin-left: 12px; font-size: 14px; } .hero { padding-top: 36px; } }
