:root { --ink:#1f2a24; --muted:#5b6a61; --bg:#fbf8f3; --card:#ffffff; --accent:#4f7a5a; --accent-ink:#ffffff; --line:#e6e0d6; }
* { box-sizing:border-box; }
body { margin:0; font-family: Georgia, 'Iowan Old Style', serif; color:var(--ink); background:var(--bg); line-height:1.6; }
a { color:var(--accent); }
header { display:flex; justify-content:space-between; align-items:center; padding:20px 24px; max-width:1040px; margin:0 auto; }
header .logo { font-size:22px; font-weight:bold; text-decoration:none; color:var(--ink); letter-spacing:.5px; }
nav a { margin-left:18px; text-decoration:none; color:var(--muted); font-family: system-ui, sans-serif; font-size:15px; }
main { max-width:1040px; margin:0 auto; padding:0 24px 48px; }
.hero { padding:56px 0 40px; }
.hero h1 { font-size:44px; line-height:1.15; margin:0 0 16px; max-width:720px; }
.hero p { font-size:19px; color:var(--muted); max-width:640px; }
.btn { display:inline-block; background:var(--accent); color:var(--accent-ink); padding:12px 22px; border-radius:999px; text-decoration:none; font-family: system-ui, sans-serif; font-weight:600; }
.grid { display:grid; grid-template-columns:repeat(auto-fit, minmax(240px, 1fr)); gap:18px; }
.card { background:var(--card); border:1px solid var(--line); border-radius:16px; padding:22px; }
.card h3 { margin:0 0 6px; }
.price { font-size:30px; font-weight:bold; margin:8px 0; }
.muted { color:var(--muted); }
section { margin:48px 0; }
table { width:100%; border-collapse:collapse; font-family: system-ui, sans-serif; font-size:15px; }
th, td { text-align:left; padding:10px 8px; border-bottom:1px solid var(--line); }
footer { border-top:1px solid var(--line); padding:24px; text-align:center; color:var(--muted); font-family: system-ui, sans-serif; font-size:13px; }
@media (max-width:600px) { .hero h1 { font-size:32px; } nav a { margin-left:10px; font-size:14px; } }
