:root{
  --ground:#191714; --panel:#221F1B; --panel-2:#2B2723; --rule:#3A342C;
  --ink:#EFE9DE; --ink-dim:#A2988A; --ink-faint:#6E655A;
  --accent:#D08A2C; --accent-ink:#191714; --warn:#C9584B; --ok:#7FA05A; --vec:#4FB3C4;
  --display: ui-sans-serif,"Segoe UI",system-ui,"Helvetica Neue",Arial,sans-serif;
  --mono: ui-monospace,"Cascadia Mono",Consolas,"DejaVu Sans Mono",monospace;
}
*{box-sizing:border-box}
html,body{height:100%}
body{margin:0;background:var(--ground);color:var(--ink);font-family:var(--display);
  font-size:15px;line-height:1.55}
a{color:var(--accent)}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

.wrap{max-width:1040px;margin:0 auto;padding:0 20px}

.top{display:flex;align-items:center;gap:12px 16px;padding:16px 0;border-bottom:1px solid var(--rule);flex-wrap:wrap}
@media (max-width:480px){.top{gap:10px}.top nav{gap:12px;font-size:13px}}
.brand{font-weight:700;letter-spacing:.12em;text-transform:uppercase;font-size:13px;text-decoration:none;color:var(--ink)}
.brand span{color:var(--accent)}
.top nav{display:flex;gap:18px;margin-left:auto;font-size:14px}
.top nav a{color:var(--ink-dim);text-decoration:none}
.top nav a:hover{color:var(--ink)}
.lang{display:flex;gap:8px;font-size:12px;margin-left:8px}
.lang button{background:none;border:1px solid var(--rule);border-radius:4px;color:var(--ink-dim);
  padding:3px 7px;cursor:pointer;font-family:inherit}
.lang button[aria-current="true"]{border-color:var(--accent);color:var(--accent)}

.hero{padding:64px 0 40px;text-align:center}
.hero h1{font-size:clamp(28px,4.5vw,44px);line-height:1.15;margin:0 0 16px}
.hero p.lead{color:var(--ink-dim);font-size:17px;max-width:620px;margin:0 auto 28px}
.hero .actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}

.btn{display:inline-block;padding:12px 22px;border-radius:6px;border:1px solid var(--rule);
  background:var(--panel-2);color:var(--ink);cursor:pointer;font-weight:600;font-size:14px;
  text-decoration:none;font-family:inherit}
.btn:hover{border-color:var(--ink-faint)}
.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.btn.ghost{background:none}
.btn:disabled{opacity:.5;cursor:not-allowed}

.section{padding:48px 0;border-top:1px solid var(--rule)}
.section h2{font-size:22px;margin:0 0 8px}
.section p.sub{color:var(--ink-dim);margin:0 0 32px;max-width:620px}

.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
@media (max-width:820px){.grid3{grid-template-columns:1fr}}

.card{border:1px solid var(--rule);border-radius:10px;padding:22px;background:var(--panel)}
.card h3{margin:0 0 8px;font-size:16px}
.card p{color:var(--ink-dim);margin:0;font-size:14px}

.plan{border:1px solid var(--rule);border-radius:10px;padding:26px;background:var(--panel);
  display:flex;flex-direction:column;gap:14px;position:relative}
.plan.destaque{border-color:var(--accent)}
.plan .tag{position:absolute;top:-11px;left:20px;background:var(--accent);color:var(--accent-ink);
  font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:3px 9px;border-radius:4px}
.plan h3{margin:0;font-size:15px;color:var(--ink-dim);text-transform:uppercase;letter-spacing:.06em}
.plan .preco{font-size:32px;font-weight:700}
.plan .preco small{font-size:14px;color:var(--ink-dim);font-weight:400}
.plan ul{list-style:none;margin:0;padding:0;font-size:13px;color:var(--ink-dim);display:flex;flex-direction:column;gap:6px}
.plan ul li:before{content:"✓ ";color:var(--ok)}

.freegrid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:8px}
@media (max-width:640px){.freegrid{grid-template-columns:1fr}}

.brand-logo{display:inline-flex;align-items:center;background:#fff;border-radius:6px;padding:5px 10px;line-height:0}
.brand-logo img{height:18px;width:auto;display:block}

.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
@media (max-width:820px){.grid4{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.grid4{grid-template-columns:1fr}}

.faq{display:flex;flex-direction:column;gap:2px;max-width:760px}
.faq details{border-bottom:1px solid var(--rule);padding:16px 0}
.faq summary{cursor:pointer;font-weight:600;font-size:15px;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary:before{content:"+ ";color:var(--accent)}
.faq details[open] summary:before{content:"– "}
.faq details p{color:var(--ink-dim);margin:10px 0 0;font-size:14px;max-width:640px}

.showcase{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:40px 0 0}
@media (max-width:820px){.showcase{grid-template-columns:1fr}}
.showcase figure{margin:0;border:1px solid var(--rule);border-radius:10px;overflow:hidden;background:var(--panel)}
.showcase img{display:block;width:100%;height:220px;object-fit:cover}
.showcase figcaption{padding:10px 14px;font-size:11px;letter-spacing:.06em;text-transform:uppercase;
  color:var(--ink-dim);border-top:1px solid var(--rule)}
.showcase figcaption b{color:var(--accent)}

.formcard{max-width:420px;margin:0 auto;border:1px solid var(--rule);border-radius:10px;
  padding:28px;background:var(--panel)}

footer{border-top:1px solid var(--rule);padding:28px 0;color:var(--ink-faint);font-size:12px;
  display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}
footer a{color:var(--ink-faint)}

.msg{font-size:13px;padding:10px 12px;border-radius:6px;margin:12px 0}
.msg.warn{background:rgba(201,88,75,.13);color:#E4A79F}
.msg.ok{background:rgba(127,160,90,.12);color:#B9CFA0}
.hidden{display:none !important}
