:root {
  color-scheme: light;
  font-family: Inter, Arial, sans-serif;
  background: #f4f2ed;
  color: #1f2522;
}

* { box-sizing: border-box; }
body { margin: 0; }
.shell { width: min(1080px, calc(100% - 40px)); margin: 0 auto; padding: 80px 0; }
.eyebrow { color: #1f5d4c; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
h1 { margin: 8px 0 12px; font-size: clamp(44px, 8vw, 84px); line-height: .95; }
.lead { max-width: 620px; color: #66706b; font-size: 20px; line-height: 1.5; }
.grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 18px; margin-top: 54px; }
.card { display: block; min-height: 230px; padding: 24px; border: 1px solid #d7ddd9; border-radius: 20px; background: #fff; color: inherit; text-decoration: none; transition: transform .2s ease, box-shadow .2s ease; }
.card:hover { transform: translateY(-3px); box-shadow: 0 16px 36px rgba(31,37,34,.1); }
.badge { display: inline-block; padding: 6px 10px; border-radius: 99px; background: #edf5f1; color: #1f5d4c; font-size: 12px; font-weight: 800; text-transform: uppercase; }
h2 { margin: 28px 0 8px; font-size: 30px; }
.card p { min-height: 54px; color: #66706b; line-height: 1.5; }
.card strong { color: #1f5d4c; }
@media (max-width: 560px) { .shell { padding-top: 48px; } .lead { font-size: 18px; } }
