:root {
  --latar: #f7f7f4;
  --teks: #1d2421;
  --redup: #5f6b66;
  --aksen: #0f766e;
  --kartu: #ffffff;
  --garis: #e2e6e1;
}
@media (prefers-color-scheme: dark) {
  :root {
    --latar: #111513;
    --teks: #eaf0ec;
    --redup: #9aa6a0;
    --aksen: #4fd1bf;
    --kartu: #1b211e;
    --garis: #2c3530;
  }
}
* { box-sizing: border-box; }
body {
  margin: 0;
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  line-height: 1.6;
  color: var(--teks);
  background: var(--latar);
}
.hero {
  padding: 56px 20px 32px;
  max-width: 720px;
  margin: 0 auto;
}
.label { color: var(--redup); margin: 0; font-size: 14px; }
h1 { font-size: 48px; margin: 4px 0 8px; color: var(--aksen); }
.tagline { font-size: 18px; margin: 0 0 20px; }
nav a { margin-right: 16px; color: var(--aksen); text-decoration: none; font-weight: 600; }
main { max-width: 720px; margin: 0 auto; padding: 0 20px; }
section { padding: 24px 0; border-top: 1px solid var(--garis); }
h2 { font-size: 22px; margin: 0 0 12px; }
h3 { font-size: 18px; margin: 0 0 8px; }
.kartu {
  background: var(--kartu);
  border: 1px solid var(--garis);
  border-radius: 14px;
  padding: 18px;
  margin-bottom: 14px;
}
.kartu p { margin: 0 0 8px; color: var(--redup); }
.aksi { margin-top: 12px !important; }
.tombol {
  display: inline-block;
  background: var(--aksen);
  color: #ffffff;
  padding: 10px 16px;
  border-radius: 10px;
  text-decoration: none;
  font-weight: 600;
}
.tombol.kedua {
  background: transparent;
  color: var(--aksen);
  border: 1px solid var(--aksen);
}
footer {
  max-width: 720px;
  margin: 0 auto;
  padding: 24px 20px 48px;
  color: var(--redup);
  font-size: 14px;
  border-top: 1px solid var(--garis);
}
