/* PaidFaster — Ledger Green brand system (shared by marketing pages) */
:root {
  --paper: #f4f3ee; --ink: #0d2b1d; --green: #1c7d4d; --green-dark: #145c39;
  --mint: #b6f09c; --muted: #41584c; --card: #ffffff; --rule: 2px solid var(--ink);
}
* { box-sizing: border-box; margin: 0; }
body { font-family: 'Helvetica Neue', Arial, sans-serif; background: var(--paper); color: var(--ink); line-height: 1.6; }
a { color: inherit; }
.wrap { max-width: 1080px; margin: 0 auto; padding: 0 24px; }

/* header */
header.site { border-bottom: var(--rule); }
.site .bar { display: flex; justify-content: space-between; align-items: center; padding: 20px 0; }
.logo { font-size: 21px; font-weight: 900; letter-spacing: -0.5px; text-decoration: none; }
.logo span { background: var(--ink); color: var(--mint); padding: 2px 7px; border-radius: 4px; margin-left: 2px; }
nav.main a { font-size: 13px; font-weight: 700; text-decoration: none; margin-left: 22px; text-transform: uppercase; letter-spacing: 0.04em; }
nav.main a:hover { color: var(--green); }
nav.main a.cta { background: var(--green); color: #fff; padding: 10px 18px; border-radius: 8px; }
nav.main a.cta:hover { background: var(--green-dark); color: #fff; }

/* type + buttons */
.kicker { font-weight: 800; font-size: 13px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--green); margin-bottom: 16px; }
h1.display { font-size: 56px; font-weight: 900; line-height: 1.03; letter-spacing: -2px; }
h1.display .money { color: var(--green); }
.sub { font-size: 17px; color: var(--muted); max-width: 560px; margin: 22px 0 30px; }
.btn { display: inline-block; background: var(--green); color: #fff; font-weight: 800; font-size: 15px; padding: 14px 26px; border-radius: 8px; text-decoration: none; }
.btn:hover { background: var(--green-dark); }
.btn.dark { background: var(--ink); }
.link { font-weight: 700; text-decoration: underline; font-size: 15px; margin-left: 18px; }

/* numbers bar */
.numbers { display: flex; margin: 50px 0; border: var(--rule); border-radius: 10px; overflow: hidden; background: var(--card); flex-wrap: wrap; }
.num { flex: 1 1 180px; padding: 20px 22px; border-right: var(--rule); }
.num:last-child { border-right: none; }
.num b { display: block; font-size: 30px; font-weight: 900; letter-spacing: -1px; }
.num.gr { background: var(--mint); }
.num span { font-size: 13px; color: var(--muted); font-weight: 600; }

/* cards + sections */
.panel { background: var(--card); border: var(--rule); border-radius: 10px; padding: 26px; }
section.block { padding: 46px 0; }
h2.head { font-size: 32px; font-weight: 900; letter-spacing: -1px; margin-bottom: 10px; }
.lede { color: var(--muted); max-width: 620px; margin-bottom: 28px; }

/* email letters */
.letter { background: var(--card); border: var(--rule); border-radius: 10px; padding: 26px 28px; position: relative; margin: 34px 0; }
.letter .tag { position: absolute; top: -14px; left: 20px; background: var(--ink); color: var(--mint); font-size: 11px; font-weight: 800; letter-spacing: 0.1em; padding: 5px 12px; border-radius: 6px; text-transform: uppercase; }
.letter .tag.firm { background: var(--green); color: #fff; }
.letter .meta { font-size: 12px; color: var(--muted); border-bottom: 1px solid #e2e0d6; padding-bottom: 10px; margin-bottom: 14px; }
.letter p { font-size: 15px; margin-bottom: 12px; }

/* footer */
footer.site { border-top: var(--rule); margin-top: 60px; padding: 30px 0 40px; font-size: 14px; color: var(--muted); }
footer.site .cols { display: flex; justify-content: space-between; gap: 20px; flex-wrap: wrap; }
footer.site a { text-decoration: none; margin-right: 18px; font-weight: 600; }
footer.site a:hover { color: var(--green); }

@media (max-width: 700px) {
  h1.display { font-size: 36px; letter-spacing: -1px; }
  nav.main a { margin-left: 12px; }
}
