/* Base do site: landing, inscrição, minhas contribuições e privacidade. Guia de identidade visual. */
:root { --preto:#212021; --branco:#fff; --cinza-um:#d6d4d0; --cinza-dois:#f2f2f2;
  --azul-um:#4d7cef; --azul-dois:#9bdffe; --cinza-verde:#869999; --verde:#b4c7a2;
  --amarelo:#ede29a; --terracota:#b1726c; --rosa:#fdc7e0; --laranja:#f4624e;
  --bg:#f2f2f2; --surface:#fff; --surface-2:#e9e8e5; --fg:#212021; --muted:#5d5b5c; --line:#d6d4d0; --link:#2f5fd6;
  --font:"Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif; }
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) { --bg:#212021; --surface:#2b2a2b; --surface-2:#343334; --fg:#f2f2f2; --muted:#b3b1ad; --line:#444244; --link:#9bdffe; color-scheme:dark; } }
:root[data-theme="dark"] { --bg:#212021; --surface:#2b2a2b; --surface-2:#343334; --fg:#f2f2f2; --muted:#b3b1ad; --line:#444244; --link:#9bdffe; color-scheme:dark; }
* { box-sizing:border-box; }
body { margin:0; background:var(--bg); color:var(--fg); font:16px/1.6 var(--font); -webkit-font-smoothing:antialiased; }
a { color:var(--link); }
h1,h2,h3 { margin:0; line-height:1.18; letter-spacing:-.01em; text-wrap:balance; }
p { margin:0; }
:focus-visible { outline:2px solid var(--azul-um); outline-offset:2px; border-radius:6px; }
.topo { background:var(--preto); color:#f2f2f2; }
.topo div { max-width:1180px; margin:0 auto; padding:12px 16px; display:flex; align-items:center; justify-content:space-between; gap:16px; }
.topo a { color:#f2f2f2; text-decoration:none; font-size:14px; }
.topo strong { font-size:14px; }
.envelope { max-width:1180px; margin:0 auto; padding:48px 16px 64px; display:grid; gap:56px; }
.estreito { max-width:720px; }
section { display:grid; gap:16px; }
section > h2 { font-size:clamp(24px,3vw,32px); }
.intro { color:var(--muted); max-width:72ch; }
.botao { display:inline-flex; align-items:center; justify-content:center; font:inherit; font-weight:700; font-size:15px; cursor:pointer; text-decoration:none; color:var(--bg); background:var(--fg); border:1.5px solid var(--fg); border-radius:999px; padding:12px 22px; }
.botao.contorno { color:var(--fg); background:transparent; }
.botao[disabled] { opacity:.5; cursor:wait; }
.blocos { display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:12px; }
.bloco { background:var(--surface); border-radius:22px; padding:22px; display:grid; gap:8px; align-content:start; border-top:6px solid var(--destaque,var(--line)); }
.bloco h3 { font-size:17px; }
.bloco p { font-size:15px; color:var(--muted); }
.form { background:var(--surface); border-radius:24px; padding:24px; display:grid; gap:16px; }
.form label { display:grid; gap:6px; font-size:14px; font-weight:500; }
.form small { color:var(--muted); font-weight:400; font-size:13px; }
input, select, textarea { font:inherit; font-size:15px; color:var(--fg); background:var(--surface-2); border:1px solid var(--line); border-radius:12px; padding:10px 12px; width:100%; }
textarea { min-height:120px; resize:vertical; }
.check { display:flex !important; grid-template-columns:none; gap:10px; align-items:flex-start; font-weight:400 !important; }
.check input { width:auto; margin-top:4px; }
.aviso { font-size:14px; padding:12px 16px; border-radius:14px; background:var(--surface-2); }
.aviso.erro { background:#fdc7e0; color:#212021; }
.aviso.ok { background:#b4c7a2; color:#212021; }
.rodape { border-top:1px solid var(--line); }
.rodape div { max-width:1180px; margin:0 auto; padding:24px 16px; display:flex; flex-wrap:wrap; gap:8px 24px; font-size:13.5px; color:var(--muted); }
[hidden] { display:none !important; }
