:root { --paper:#F5F1E8; --ink:#1F261B; --text:#2E3528; --muted:#6F7263; --line:#D6CEBA; --olive:#4A5D3A; --olive-dark:#2B3623; --gold:#C9A04A;
  --serif:'Iowan Old Style','Palatino Linotype',Palatino,Georgia,serif; --sans:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif; }
* { box-sizing:border-box; margin:0; padding:0; }
body { background:url(grain.png),var(--paper); color:var(--text); font-family:var(--sans); font-size:17px; line-height:1.6; min-height:100vh; display:flex; flex-direction:column; }
main { flex:1; width:100%; max-width:980px; margin:0 auto; padding:48px 20px 32px; display:grid; grid-template-columns:1fr 1.15fr; gap:56px; align-items:center; }
main.single { display:block; max-width:620px; text-align:center; padding-top:72px; }
.cover { width:100%; max-width:340px; justify-self:center; border-radius:6px; box-shadow:0 18px 40px rgba(31,38,27,.28), 10px 10px 0 #DAD1BA; transform:rotate(-2deg); }
.kicker { font-size:12px; font-weight:700; letter-spacing:.28em; text-transform:uppercase; color:#A27A2C; }
h1 { font-family:var(--serif); font-weight:600; font-size:clamp(32px,5vw,46px); line-height:1.08; letter-spacing:-.01em; color:var(--ink); margin:12px 0 18px; }
h1 em { font-style:italic; font-weight:500; color:var(--olive); }
p { margin-bottom:14px; }
ul.points { list-style:none; margin:18px 0 26px; }
ul.points li { padding:9px 0 9px 30px; border-top:1px solid var(--line); position:relative; }
ul.points li:last-child { border-bottom:1px solid var(--line); }
ul.points li::before { content:''; position:absolute; left:4px; top:17px; width:10px; height:10px; border-radius:50%; background:var(--gold); }
form { background:url(grain_dark.png),var(--olive-dark); border-radius:8px; padding:24px; color:rgba(245,241,232,.86); }
form label { display:block; font-size:12px; font-weight:700; letter-spacing:.2em; text-transform:uppercase; color:#E3C98C; margin-bottom:8px; }
form input[type=email] { width:100%; font:inherit; padding:14px 16px; border:0; border-radius:6px; background:var(--paper); color:var(--ink); }
.btn { display:inline-block; width:100%; margin-top:12px; font:inherit; font-weight:700; letter-spacing:.06em; text-align:center; text-decoration:none; cursor:pointer; padding:15px 20px; border:0; border-radius:999px; background:#D9B36A; color:#1F261B; }
.btn:hover, .btn:focus-visible { background:#E6C27C; outline:2px solid var(--paper); outline-offset:2px; }
.consent { font-size:13px; line-height:1.5; margin:14px 0 0; color:rgba(245,241,232,.72); }
.consent a { color:#E3C98C; }
.hp { position:absolute; left:-5000px; }
main.single .btn { width:auto; padding:16px 34px; margin-top:20px; }
.note { font-size:14px; color:var(--muted); margin-top:22px; }
footer { text-align:center; font-size:13px; color:var(--muted); padding:20px; border-top:1px solid var(--line); }
footer a { color:var(--olive-dark); margin:0 8px; }
@media (max-width:760px) { main { grid-template-columns:1fr; gap:34px; padding-top:32px; } .cover { max-width:230px; } }
main > * { min-width:0; }

main.legal { text-align:left; max-width:680px; padding-top:48px; }
main.legal h2 { font-family:var(--serif); font-size:20px; color:var(--ink); margin:30px 0 10px; }
main.legal p { font-size:16px; }
main.legal a { color:var(--olive-dark); word-break:break-word; }
