:root {
  --fundo: #0B0D1B;
  --superficie: #15192C;
  --violeta: #654BEE;
  --menta: #41DDB0;
  --texto: #F6F7FF;
  --texto-fraco: #A7ACC7;
  --borda: #262C4A;
}
* { box-sizing: border-box; }
body {
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  background: var(--fundo);
  color: var(--texto);
  line-height: 1.6;
}
a { color: var(--menta); }
a:hover { color: var(--violeta); }
header {
  border-bottom: 1px solid var(--borda);
}
.header-inner {
  max-width: 760px;
  margin: 0 auto;
  padding: 16px 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}
.logo-link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
}
.logo-link img {
  height: 36px;
  width: 36px;
}
.logo-link span {
  font-weight: 700;
  font-size: 20px;
  color: var(--texto);
}
nav.nav-header {
  display: flex;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
}
nav.nav-header a {
  color: var(--texto-fraco);
  font-weight: 600;
  font-size: 14px;
  text-decoration: none;
}
nav.nav-header a:hover {
  color: var(--menta);
  text-decoration: underline;
}
main {
  max-width: 760px;
  margin: 0 auto;
  padding: 40px 20px 56px;
}
h1 {
  font-weight: 800;
  font-size: 32px;
  margin: 0 0 16px;
}
h2 {
  font-weight: 700;
  font-size: 20px;
  margin: 32px 0 8px;
  color: var(--texto);
}
p { color: var(--texto-fraco); }
.atualizado {
  font-weight: 600;
  color: var(--texto-fraco);
  margin-bottom: 24px;
  font-size: 14px;
}
.botao {
  display: inline-block;
  background: var(--violeta);
  color: var(--texto);
  font-weight: 700;
  text-decoration: none;
  padding: 14px 24px;
  border-radius: 10px;
}
.botao:hover { background: #7a63f2; color: var(--texto); }
.botao-contorno {
  display: inline-block;
  background: transparent;
  border: 1px solid var(--borda);
  color: var(--texto-fraco);
  font-weight: 600;
  padding: 13px 23px;
  border-radius: 10px;
}
.hero {
  text-align: left;
}
.hero-botoes {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 24px;
}
.blocos {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
  margin: 32px 0;
}
@media (min-width: 640px) {
  .blocos { grid-template-columns: 1fr 1fr; }
}
.bloco {
  background: var(--superficie);
  border: 1px solid var(--borda);
  border-radius: 12px;
  padding: 16px;
}
.bloco h2 { margin-top: 0; font-size: 17px; }
.bloco p { margin: 0; font-size: 14px; }
ul { color: var(--texto-fraco); padding-left: 20px; }
li { margin-bottom: 8px; }
footer {
  border-top: 1px solid var(--borda);
  text-align: center;
  padding: 24px 20px;
  font-size: 14px;
  color: var(--texto-fraco);
}
footer a { margin: 0 6px; }
