:root{
  --milho:#F5C518;--milho-escuro:#E0A800;--folha:#2E7D32;--folha-clara:#3C9A43;
  --creme:#FFFBEF;--tinta:#1F2A1F;--cinza:#6B7280;--borda:#EDE4C8;--branco:#fff;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font:16px/1.55 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--tinta);background:var(--creme)}
a{color:var(--folha)}
.wrap{max-width:1100px;margin:0 auto;padding:0 16px}

header{background:var(--branco);border-bottom:1px solid var(--borda);position:sticky;top:0;z-index:10}
header .wrap{display:flex;align-items:center;justify-content:space-between;height:64px;gap:16px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--tinta);font-weight:800;font-size:1.4rem;letter-spacing:-.02em}
.brand img{height:40px}
.brand b{color:var(--folha)}
nav a{margin-left:18px;text-decoration:none;color:var(--tinta);font-weight:600}
nav a.cta{background:var(--milho);padding:8px 14px;border-radius:999px}
nav a.cta:hover{background:var(--milho-escuro)}

.hero{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;padding:48px 0 24px}
.hero h1{font-size:clamp(1.8rem,4vw,2.8rem);line-height:1.1;margin:0 0 12px;letter-spacing:-.02em}
.hero p{font-size:1.1rem;color:var(--cinza);margin:0 0 20px;max-width:560px}
.hero img{height:220px}
.busca{display:flex;gap:8px;max-width:560px}
.busca input{flex:1;font:inherit;padding:14px 16px;border:2px solid var(--borda);border-radius:12px;background:var(--branco)}
.busca input:focus{outline:none;border-color:var(--milho)}

.chips{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 32px}
.chip{border:1px solid var(--borda);background:var(--branco);padding:6px 12px;border-radius:999px;font-size:.9rem;text-decoration:none;color:var(--tinta);cursor:pointer}
.chip:hover,.chip.on{background:var(--milho);border-color:var(--milho)}

.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin-bottom:48px}
.card{background:var(--branco);border:1px solid var(--borda);border-radius:16px;padding:18px;display:flex;flex-direction:column;gap:8px;text-decoration:none;color:inherit;transition:transform .12s,box-shadow .12s}
.card:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(31,42,31,.08)}
.card.destaque{border-color:var(--milho);box-shadow:0 0 0 2px var(--milho) inset}
.card h3{margin:0;font-size:1.1rem}
.card .cidade{color:var(--cinza);font-size:.9rem}
.card .desc{margin:0;font-size:.95rem;flex:1}
.tags{display:flex;flex-wrap:wrap;gap:6px}
.tag{font-size:.75rem;background:var(--creme);border:1px solid var(--borda);padding:2px 8px;border-radius:999px}
.selo{font-size:.72rem;font-weight:700;color:var(--tinta);background:var(--milho);padding:2px 8px;border-radius:999px;align-self:flex-start}
.vazio{display:none;text-align:center;color:var(--cinza);padding:40px}

.perfil{background:var(--branco);border:1px solid var(--borda);border-radius:20px;padding:32px;margin:32px 0;display:grid;grid-template-columns:1fr 280px;gap:32px}
.perfil h1{margin:0 0 4px}
.perfil .cidade{color:var(--cinza)}
.perfil p{font-size:1.05rem}
.contatos{display:flex;flex-direction:column;gap:10px}
.btn{display:block;text-align:center;padding:12px 16px;border-radius:12px;text-decoration:none;font-weight:700;border:2px solid var(--folha);color:var(--folha);background:var(--branco)}
.btn.primario{background:var(--folha);color:var(--branco)}
.btn.zap{background:#25D366;border-color:#25D366;color:var(--branco)}
.reivindicar{font-size:.9rem;color:var(--cinza);margin-top:16px}

.form{background:var(--branco);border:1px solid var(--borda);border-radius:20px;padding:32px;max-width:720px;margin:32px auto}
.form label{display:block;font-weight:600;margin:14px 0 6px}
.form input,.form select,.form textarea{width:100%;font:inherit;padding:12px;border:2px solid var(--borda);border-radius:10px;background:var(--creme)}
.form input:focus,.form textarea:focus,.form select:focus{outline:none;border-color:var(--milho)}
.form .opc{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:6px}
.form .opc label{font-weight:400;margin:0;display:flex;gap:8px;align-items:center}
.form .opc input{width:auto}
.form button{margin-top:20px;width:100%;font:inherit;font-weight:700;font-size:1.05rem;padding:14px;border:0;border-radius:12px;background:var(--milho);cursor:pointer}
.form button:hover{background:var(--milho-escuro)}
.planos{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:8px}
.plano{border:2px solid var(--borda);border-radius:12px;padding:14px;cursor:pointer}
.plano:has(input:checked){border-color:var(--milho);background:var(--creme)}
.plano input{margin-right:8px}
.plano small{display:block;color:var(--cinza)}

footer{border-top:1px solid var(--borda);padding:32px 0;color:var(--cinza);font-size:.9rem;margin-top:48px}
footer .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px}
footer a{color:var(--cinza)}

@media (max-width:720px){
  .hero{grid-template-columns:1fr;padding-top:24px}
  .hero img{height:150px;order:-1}
  .perfil{grid-template-columns:1fr;padding:20px}
  nav a:not(.cta){display:none}
}
