/* Páginas internas (boas-vindas, privacidade, termos, 404): mesmo papel e tinta da página de vendas. */
:root {
  --papel: #f4f3ef;
  --papel-2: #eae8e1;
  --cartao: #fbfaf7;
  --tinta: #17151c;
  --tinta-2: #4b4754;
  --tinta-3: #77727f;
  --linha: #d9d5cb;
  --ouro: #e8b12d;
  --ouro-tinta: #3a2a06;
  /* nomes antigos usados nas páginas */
  --roxo: #17151c;
  --roxo-2: #17151c;
  --dourado: #e8b12d;
  --texto: #17151c;
  --suave: #4b4754;
  --fundo: #f4f3ef;
  --display: "Archivo", "Arial Narrow", "Helvetica Neue", Arial, sans-serif;
  --corpo: "Instrument Sans", "Segoe UI", Helvetica, Arial, sans-serif;
  color-scheme: light;
}
* { box-sizing: border-box; }
body { margin: 0; background: var(--papel); color: var(--tinta); font-family: var(--corpo); font-size: 16.5px; line-height: 1.7; -webkit-font-smoothing: antialiased; }
header.topo { border-bottom: 1px solid var(--linha); padding-block: 16px; background: var(--papel); }
header.topo .wrap { display: flex; align-items: center; gap: 10px; }
header.topo img { width: 32px; height: 32px; border-radius: 8px; }
header.topo a { color: var(--tinta); text-decoration: none; font-family: var(--display); font-stretch: 95%; font-weight: 800; font-size: 19px; letter-spacing: -.01em; }
header.topo a span { color: inherit; }
header.topo .voltar { margin-left: auto; font-family: var(--corpo); font-weight: 500; font-size: 14.5px; color: var(--tinta-2); }
.wrap { max-width: 760px; margin: 0 auto; padding-inline: 20px; }
main.wrap { padding-block: 48px 72px; }
h1, h2 { font-family: var(--display); font-stretch: 90%; font-weight: 800; letter-spacing: -.015em; text-wrap: balance; }
h1 { font-size: clamp(32px, 5vw, 44px); line-height: 1.05; margin: 0 0 8px; }
h2 { font-size: 22px; line-height: 1.2; margin: 40px 0 10px; }
p, li { color: var(--tinta-2); text-wrap: pretty; }
strong { color: var(--tinta); }
.atualizado { color: var(--tinta-3); font-size: 14px; margin-bottom: 28px; }
.destaque { background: var(--cartao); border: 1px solid var(--linha); border-left: 3px solid var(--ouro); border-radius: 8px; padding: 14px 18px; margin: 22px 0; }
table { width: 100%; border-collapse: collapse; font-size: 15px; margin: 12px 0; }
th, td { text-align: left; padding: 11px 10px; border-bottom: 1px solid var(--linha); vertical-align: top; color: var(--tinta-2); }
th { color: var(--tinta); font-weight: 700; }
.tabela { overflow-x: auto; }
footer { border-top: 1px solid var(--linha); color: var(--tinta-3); font-size: 14px; padding-block: 24px 36px; }
footer a { color: var(--tinta-2); }
a { color: var(--tinta); text-decoration-color: var(--ouro); text-underline-offset: 3px; text-decoration-thickness: 2px; }
:focus-visible { outline: 3px solid var(--ouro); outline-offset: 3px; }

/* Boas-vindas */
.passo { display: grid !important; grid-template-columns: 44px minmax(0, 1fr); gap: 16px; background: transparent !important; border: 0 !important;
  border-top: 1px solid var(--linha) !important; border-radius: 0 !important; padding: 22px 0 !important; margin: 0 !important; }
.passo .n { display: grid; place-items: center; font-size: 17px; width: 40px !important; height: 40px !important; border-radius: 10px !important; background: var(--tinta) !important; color: #fff !important;
  font-family: var(--display); font-weight: 800; }
.passo h2 { margin: 4px 0 6px !important; font-size: 21px !important; }
.botao { display: inline-flex !important; align-items: center; gap: 8px; padding: 12px 20px; border-radius: 10px; font-weight: 700; text-decoration: none; margin-top: 10px; background: var(--ouro) !important; color: var(--ouro-tinta) !important; border: 1px solid #c9951c;
  box-shadow: inset 0 -2px 0 rgba(0,0,0,.12); transition: transform .18s ease; }
.botao:hover { transform: translateY(-1px); }
.botao.desligado { opacity: .55; pointer-events: none; }

/* Aviso de cookies (mesmo das outras páginas) */
.aviso-cookies { position: fixed; left: 16px; right: 16px; bottom: 16px; max-width: 620px; margin: 0 auto; background: var(--tinta); color: #fff; border-radius: 12px;
  padding: 14px 16px; display: flex; flex-wrap: wrap; gap: 12px; align-items: center; justify-content: space-between; z-index: 30; font-size: 14.5px; }
.aviso-cookies p { margin: 0; flex: 1 1 260px; color: #fff; }
.aviso-cookies a { color: var(--ouro); }
.aviso-cookies div { display: flex; gap: 8px; }
.aviso-cookies button { font: 700 14px var(--corpo); border: 0; border-radius: 8px; padding: 9px 14px; cursor: pointer; background: var(--ouro); color: var(--ouro-tinta); }
.aviso-cookies button.sec { background: transparent; color: #fff; border: 1px solid rgba(255,255,255,.35); }
