:root {
  color-scheme: light;
  font-family: system-ui, sans-serif;
  color: #14271f;
  background: #f6faf8;
  line-height: 1.65;
}
body { margin: 0; }
header, main, footer { box-sizing: border-box; max-width: 760px; margin: auto; padding: 24px; }
.brand { display: inline-flex; gap: 12px; align-items: center; font-weight: 700; text-decoration: none; }
main { padding-top: 8px; }
h1 { font-size: clamp(1.9rem, 5vw, 2.8rem); line-height: 1.15; letter-spacing: -.035em; }
h2 { margin: 2rem 0 .6rem; font-size: 1.3rem; }
a { color: #056142; text-underline-offset: .15em; overflow-wrap: anywhere; }
li + li { margin-top: .55rem; }
.button { display: inline-block; padding: .65rem 1rem; border-radius: .5rem; background: #056142; color: white; text-decoration: none; font-weight: 650; }
label { display: block; font-size: .9rem; }
input { box-sizing: border-box; max-width: 100%; width: 23rem; margin-top: .35rem; border: 1px solid #a1b9ac; border-radius: .4rem; background: white; padding: .65rem .8rem; color: inherit; font: inherit; }
footer { display: flex; flex-wrap: wrap; gap: .8rem 1.4rem; border-top: 1px solid #d0e1d9; }
