:root { --ink:#1d2733; --muted:#5b6b7c; --accent:#1f6f4a; --bg:#ffffff; --wash:#f4f7f5; }
* { box-sizing:border-box; }
body { margin:0; font-family:Georgia,'Times New Roman',serif; color:var(--ink); background:var(--bg); line-height:1.65; }
.wrap { max-width:760px; margin:0 auto; padding:0 20px; }
.site-header { background:var(--ink); color:#fff; padding:14px 0; margin-bottom:24px; }
.site-header .wrap { display:flex; justify-content:space-between; align-items:center; }
.site-header a { color:#fff; text-decoration:none; }
.brand { font-weight:bold; font-size:1.15rem; }
.site-header nav a { margin-left:18px; font-size:.95rem; opacity:.9; }
.disclosure { background:var(--wash); border-left:4px solid var(--accent); padding:10px 14px; font-size:.85rem; color:var(--muted); }
.disclosure-top { margin:0 0 24px; }
h1 { font-size:2rem; line-height:1.25; margin:.5em 0 .2em; }
h2 { font-size:1.4rem; margin:1.8em 0 .5em; }
h3 { font-size:1.15rem; margin:1.4em 0 .4em; }
.byline { color:var(--muted); font-size:.9rem; margin-top:0; }
a { color:var(--accent); }
.product-card { border:1px solid #dfe7e2; border-radius:8px; padding:16px; margin:18px 0; background:#fbfdfc; }
.product-card h3 { margin-top:0; }
.btn { display:inline-block; background:var(--accent); color:#fff !important; padding:10px 18px; border-radius:6px; text-decoration:none; font-family:system-ui,sans-serif; font-weight:600; }
.aff-note { font-size:.8rem; color:var(--muted); }
.price-ts { font-size:.8rem; color:var(--muted); display:block; margin-top:6px; }
.checklist { list-style:none; padding-left:0; }
.checklist li { padding:6px 0 6px 30px; position:relative; border-bottom:1px dashed #e3eae6; }
.checklist li::before { content:"☐"; position:absolute; left:4px; }
.email-capture { background:var(--wash); border-radius:8px; padding:20px; margin:40px 0; font-family:system-ui,sans-serif; }
.email-capture input[type=email] { padding:10px; width:60%; max-width:320px; border:1px solid #ccd6d1; border-radius:6px; }
.email-capture button { padding:10px 18px; background:var(--ink); color:#fff; border:0; border-radius:6px; cursor:pointer; }
.site-footer { border-top:1px solid #dfe7e2; margin-top:40px; padding:20px 0 40px; font-size:.85rem; color:var(--muted); }
table.specs { border-collapse:collapse; width:100%; font-size:.92rem; margin:16px 0; }
table.specs th, table.specs td { border:1px solid #dfe7e2; padding:8px 10px; text-align:left; }
table.specs th { background:var(--wash); }
@media print {
  .site-header, .email-capture, .site-footer, .disclosure { display:none; }
  .checklist li::before { content:"☐"; }
}
