
* { box-sizing: border-box; }
:root{ --black:#000000; --light:#E4E2DD; --steel:#5F777D; }
body { margin:0; font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, 'Helvetica Neue', Arial, 'Noto Sans', 'Liberation Sans', sans-serif; color:#0B0F19; background:#fff; }
h1,h2,h3 { font-family: Merriweather, serif; }
a { color: inherit; text-decoration: none; }
.container { max-width: 1100px; margin:0 auto; padding:0 16px; }
.small { font-size:12px; color:#6b7280; }
.sub { color:#374151; }
.btn { display:inline-flex; align-items:center; gap:8px; padding:12px 16px; border-radius:12px; border:1px solid #e5e7eb; font-weight:600; transition: transform .05s ease, box-shadow .2s ease; }
.btn-dark { background: var(--black); color:#fff; border-color: var(--black); }
.btn-dark:hover{ transform: translateY(-1px); box-shadow:0 6px 18px rgba(0,0,0,.15); }
.btn-outline { background: transparent; }
.btn-outline:hover{ background:#f3f4f6; }

.nav { position:sticky; top:0; backdrop-filter: blur(6px); background: rgba(255,255,255,.85); border-bottom:1px solid #e5e7eb; z-index:10; }
.nav-inner { display:flex; align-items:center; justify-content:space-between; padding:10px 0; }
.brand { display:flex; align-items:center; gap:10px; }
.logo { height:42px; width:auto; }
.nav-links { display:none; gap:20px; }
.nav-cta { display:flex; align-items:center; gap:8px; }
#lang { padding:6px 8px; border-radius:6px; border:1px solid #e5e7eb; }
@media (min-width:768px){ .nav-links{ display:flex; } }

.hero { background: linear-gradient(135deg, var(--light), #ffffff 45%, var(--steel)); padding:64px 0; }
.hero .title { font-size:40px; line-height:1.1; margin:0 0 12px; color:#0B0F19; }
.hero .sub { font-size:18px; max-width:700px; }
.hero-cta { margin-top:16px; display:flex; gap:10px; }

.section { padding:64px 0; }
.section-alt { background:#f9fafb; padding:64px 0; }
.cards { display:grid; gap:16px; grid-template-columns:1fr; }
.cards.three { grid-template-columns: repeat(3, 1fr); }
.card { border:1px solid #e5e7eb; background:#fff; border-radius:16px; padding:20px; }
.grid { display:grid; gap:16px; grid-template-columns:1fr; }
.lbl { display:block; font-size:14px; margin-top:8px; }
.inp { width:100%; padding:10px 12px; border:1px solid #e5e7eb; border-radius:8px; margin:6px 0 0; }
.row { display:flex; gap:8px; align-items:center; margin:8px 0; }

.footer { border-top:1px solid #e5e7eb; }
.footer-inner { display:flex; flex-direction:column; gap:8px; justify-content:space-between; align-items:center; padding:16px 0; }
@media (min-width:768px){
  .cards { grid-template-columns: repeat(4, 1fr); }
  .grid { grid-template-columns: 2fr 1fr; }
  .footer-inner { flex-direction: row; }
}
/* --- ajustes finos Goodspot (site estático) --- */
.logo { height: 40px; max-width: 220px; width: auto; object-fit: contain; }
@media (min-width: 1024px) { .logo { height: 52px; max-width: 260px; } }

.nav-inner { padding: 8px 0; } /* header mais compacto */

/* Fundo do herói com o gradiente Goodspot */
.hero {
  background: linear-gradient(135deg, #E4E2DD, #ffffff 40%, #5F777D);
  padding: 56px 0;
}