:root {
  --ink:#0b1217; --mut:#5b6b79; --acc:#2b6fff;
  --bg:#ffffff; --card:#ffffff; --br:#e6eaef;
}

body {
  background:var(--bg);
  color:var(--ink);
  font-family:system-ui, -apple-system, 'Segoe UI', Roboto, Ubuntu, Arial, sans-serif;
}

.hubpage .wrap {
  max-width:1120px;
  margin:0 auto;
  padding:22px 16px 64px;
}

.eyebrow {
  font:800 12px/1.1 system-ui;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#64748b;
  margin:8px 0 6px;
}

h1 {
  font:800 clamp(24px,3.2vw,36px)/1.2 system-ui;
  margin:6px 0 14px;
}
.muted { color:var(--mut); }

/* Cards */
.card {
  background:var(--card);
  border:1px solid var(--br);
  border-radius:14px;
  padding:18px 20px;
  box-shadow:0 2px 8px rgba(0,0,0,.03);
  transition:transform .15s ease, box-shadow .2s ease;
}
.card:hover {
  transform:translateY(-2px);
  box-shadow:0 4px 12px rgba(0,0,0,.06);
}
.card summary {
  cursor:pointer;
  font-weight:700;
  font-size:15px;
  list-style:none;
}
.card summary::-webkit-details-marker { display:none; }

/* Grid */
.grid-2, .grid-3 {
  display:grid;
  gap:18px;
}
.grid-2 { grid-template-columns:repeat(2,1fr); }
.grid-3 { grid-template-columns:repeat(3,1fr); }
@media (max-width:900px){ .grid-3{grid-template-columns:1fr 1fr;} }
@media (max-width:600px){ .grid-2,.grid-3{grid-template-columns:1fr;} }

/* Badge */
.badge {
  display:inline-flex;
  align-items:center; justify-content:center;
  width:24px; height:24px;
  border-radius:999px;
  background:#e7efff;
  color:#1f4fd6;
  font:800 12px/1 system-ui;
  margin-right:8px;
}

/* CTA Section */
.cta-area {
  margin-top:28px;
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  align-items:center;
}

/* Botões (usam os estilos globais do header) */
.hub-btn {
  height:42px;
  padding:0 18px;
  border-radius:12px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font:700 14px/1 system-ui;
  text-decoration:none;
  border:1px solid var(--br);
  white-space:nowrap;
  transition:all .2s ease;
}
.hub-btn--primary {
  background:var(--acc);
  color:#fff;
  border-color:var(--acc);
  box-shadow:0 2px 8px rgba(43,111,255,.25);
}
.hub-btn--cta {
  color:#fff;
  background:linear-gradient(180deg,#2b6fff 0%,#1d4ed8 100%);
  border-color:#2563eb;
  box-shadow:0 6px 16px rgba(43,111,255,.25);
  animation:hubPulse 2.5s ease-in-out infinite;
}
@keyframes hubPulse {
  0%,100%{transform:scale(1);box-shadow:0 6px 16px rgba(43,111,255,.25);}
  50%{transform:scale(1.03);box-shadow:0 8px 20px rgba(43,111,255,.35);}
}

/* FAQ */
.faq { margin-top:30px; }
.faq h3 { font-weight:800; margin-bottom:10px; }

/* Responsivo */
@media (max-width:480px) {
  h1 { font-size:26px; }
  .card { padding:14px 16px; }
  .hub-btn { height:36px; font-size:13px; padding:0 14px; }
}
