:root { color-scheme: light; --green:#176b4d; --ink:#18312a; --muted:#5d6f68; --cream:#f5faf7; }
* { box-sizing:border-box; }
body { margin:0; font-family:Inter,system-ui,sans-serif; color:var(--ink); background:var(--cream); line-height:1.6; }
header, main, footer { width:min(980px,calc(100% - 32px)); margin:auto; }
header { display:flex; justify-content:space-between; align-items:center; padding:22px 0; }
.brand { color:var(--green); font-size:1.35rem; font-weight:800; text-decoration:none; }
nav a, footer a { color:var(--green); margin-left:16px; }
.hero { padding:72px 0 52px; }
h1 { font-size:clamp(2.2rem,6vw,4.5rem); line-height:1.05; max-width:800px; margin:0 0 20px; }
h2 { margin-top:42px; }
.lead { font-size:1.2rem; color:var(--muted); max-width:720px; }
.card-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:18px; margin:32px 0; }
.card, article { background:white; border:1px solid #dce9e2; border-radius:18px; padding:24px; }
.price { color:var(--green); font-size:2rem; font-weight:800; }
.button { display:inline-block; background:var(--green); color:white; padding:12px 18px; border-radius:10px; text-decoration:none; }
article { margin:28px 0 60px; }
footer { border-top:1px solid #dce9e2; padding:28px 0 50px; color:var(--muted); }
form { display:grid; gap:14px; max-width:620px; }
label { font-weight:600; }
input, textarea { width:100%; padding:12px; border:1px solid #cbd5e1; border-radius:8px; font:inherit; }
textarea { min-height:110px; resize:vertical; }
.check { display:flex; gap:10px; align-items:flex-start; font-weight:400; }
.check input { width:auto; margin-top:4px; }
.status { min-height:24px; }
.danger { background:#b42318; border:0; cursor:pointer; }
.muted { color:var(--muted); }
@media (max-width:650px) { header { align-items:flex-start; } nav { display:flex; flex-direction:column; } nav a { margin:2px 0; } }
