:root { --ink:#1d1d1d; --muted:#6a6a6a; --line:#e2e0d8; --accent:#2f6f4e; --bg:#fbfaf6; }
  * { box-sizing:border-box }
  body { margin:0; background:var(--bg); color:var(--ink);
         font:16px/1.55 system-ui,-apple-system,"Segoe UI",sans-serif; }
  header { padding:2.2rem 1.25rem 1.5rem; border-bottom:1px solid var(--line); }
  main { max-width:1080px; margin:0 auto; padding:1.5rem 1.25rem 4rem; }
  h1 { margin:0 0 .35rem; font-size:1.6rem; letter-spacing:-.01em }
  h2 { margin:2.4rem 0 .8rem; font-size:1.12rem; text-transform:uppercase; letter-spacing:.06em;
        color:var(--muted); font-weight:600 }
  .sub { color:var(--muted); font-size:.95rem }
  .cards { display:grid; gap:1rem; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); margin-top:1.25rem }
  .card { background:#fff; border:1px solid var(--line); border-radius:10px; padding:1rem 1.1rem }
  .card .k { font-size:.78rem; text-transform:uppercase; letter-spacing:.05em; color:var(--muted) }
  .card .v { font-size:1.3rem; font-weight:600; margin-top:.2rem }
  .card .n { font-size:.85rem; color:var(--muted) }
  table { width:100%; border-collapse:collapse; background:#fff; border:1px solid var(--line);
           border-radius:8px; overflow:hidden; font-size:.92rem }
  th,td { text-align:left; padding:.55rem .7rem; border-bottom:1px solid var(--line); vertical-align:top }
  th { background:#f3f1ea; font-size:.78rem; text-transform:uppercase; letter-spacing:.04em; color:var(--muted) }
  tr:last-child td { border-bottom:0 }
  code { background:#f3f1ea; padding:.1rem .35rem; border-radius:4px; font-size:.9em }
  .grid2 { display:grid; gap:1.25rem; grid-template-columns:1fr 1fr; align-items:start }
  @media (max-width:820px) { .grid2 { grid-template-columns:1fr } }
  .pill { display:inline-block; border:1px solid var(--line); background:#fff; border-radius:999px;
           padding:.15rem .6rem; font-size:.8rem; color:var(--muted); margin:.15rem .3rem .15rem 0 }
  .none { color:var(--accent); font-weight:600 }
  figure { margin:0 }
  img { max-width:100%; border:1px solid var(--line); border-radius:8px }
  footer { border-top:1px solid var(--line); padding:1.5rem 1.25rem; color:var(--muted); font-size:.85rem }
  ul { padding-left:1.1rem }

/* Appended by tools/build_site.py, replacing markup that used inline styles. */
.plan { width: 100%; height: auto; background: #f7f7f2; border: 1px solid #ddd; }
.pill--sale { border-color: #2f6f4e; color: #2f6f4e; font-weight: 600; }
.backlink { margin: 0 0 1.4rem; }
