:root {
  --fundo: #f7f8f6;
  --superficie: #ffffff;
  --texto: #1d2420;
  --suave: #5a645e;
  --destaque: #1f6b4f;
  --borda: #dfe4e0;
  color-scheme: light dark;
}

@media (prefers-color-scheme: dark) {
  :root {
    --fundo: #121614;
    --superficie: #1a201d;
    --texto: #e8ece9;
    --suave: #a3ada7;
    --destaque: #6cc59d;
    --borda: #2b332f;
  }
}

* { box-sizing: border-box; }

body {
  margin: 0;
  background: var(--fundo);
  color: var(--texto);
  font: 17px/1.6 system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
}

main, header, footer {
  max-width: 760px;
  margin: 0 auto;
  padding: 0 16px;
}

header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 24px;
  padding-bottom: 24px;
}

.marca {
  font-weight: 700;
  font-size: 20px;
  color: var(--texto);
  text-decoration: none;
}

nav a { color: var(--suave); margin-left: 16px; }

h1 { font-size: 34px; line-height: 1.2; margin: 32px 0 16px; }
h2 { font-size: 22px; margin: 40px 0 8px; }

p, li { color: var(--texto); }
.suave { color: var(--suave); }
a { color: var(--destaque); }

.aviso {
  background: var(--superficie);
  border: 1px solid var(--borda);
  border-left: 4px solid var(--destaque);
  border-radius: 8px;
  padding: 16px;
  margin: 24px 0;
}

.cartoes {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 16px;
  padding: 0;
  list-style: none;
}

.cartoes li {
  background: var(--superficie);
  border: 1px solid var(--borda);
  border-radius: 8px;
  padding: 16px;
}

.cartoes strong { display: block; margin-bottom: 4px; }

footer {
  border-top: 1px solid var(--borda);
  margin-top: 56px;
  padding-top: 24px;
  padding-bottom: 40px;
  font-size: 15px;
  color: var(--suave);
}
