
*{box-sizing:border-box;margin:0;padding:0}
:root{
  --grafite:#2B3A40;--grafite2:#1E2A2F;--creme:#FBF9F4;--branco:#fff;--corpo:#54666D;
  --linha:#E4EAE9;--verde:#7FC9A4;--amarelo:#F3D57C;--azul:#84BBDF;--emerald:#2E8F6B;
}
body{font:400 16px/1.6 -apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;color:var(--grafite);background:var(--creme);-webkit-font-smoothing:antialiased}
.w{max-width:1160px;margin:0 auto;padding:0 24px}
svg.lg{height:100%;width:auto;display:block}

header{background:var(--grafite);padding:20px 0 0}
header .top{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:20px}
header .marca{height:32px}
header .conta{color:#B7C6CB;font-size:14px;display:flex;gap:16px;align-items:center}
header .conta b{color:#fff}

.busca{background:var(--grafite);padding-bottom:26px}
.linha-busca{display:flex;gap:10px;flex-wrap:wrap}
.campo{flex:1 1 340px;display:flex;align-items:center;background:#fff;border-radius:12px;padding:0 16px;height:54px;gap:10px}
.campo input{border:0;outline:0;font:inherit;flex:1;background:transparent;color:var(--grafite)}
.campo .ic{opacity:.45;flex:0 0 20px}
.btn-geo{height:54px;border:0;border-radius:12px;background:var(--emerald);color:#fff;font:600 15px/1 inherit;padding:0 22px;cursor:pointer;display:flex;align-items:center;gap:9px;white-space:nowrap;transition:.15s}
.btn-geo:hover{background:#26775a}
.btn-geo.ativo{background:#fff;color:var(--emerald)}
.local{color:#B7C6CB;font-size:14px;margin-top:14px;display:flex;align-items:center;gap:8px}
.local b{color:#fff}
.local a{color:var(--verde);cursor:pointer;text-decoration:underline}

.filtros{background:var(--branco);border-bottom:1px solid var(--linha);padding:16px 0;position:sticky;top:0;z-index:20}
.chips{display:flex;gap:9px;overflow-x:auto;padding-bottom:2px}
.chip{border:1.5px solid var(--linha);background:var(--branco);border-radius:999px;padding:9px 16px;font-size:14.5px;white-space:nowrap;cursor:pointer;color:var(--corpo);transition:.15s}
.chip:hover{border-color:#C3D2D0}
.chip.on{background:var(--grafite);border-color:var(--grafite);color:#fff;font-weight:600}

.corpo{display:grid;grid-template-columns:1fr 380px;gap:26px;padding:28px 0 60px;align-items:start}
.resumo{font-size:14.5px;color:var(--corpo);margin-bottom:16px;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.ord{display:flex;gap:8px;align-items:center}
.ord select{border:1.5px solid var(--linha);border-radius:9px;padding:7px 10px;font:inherit;font-size:14px;background:#fff;color:var(--grafite)}

.card{background:var(--branco);border:1px solid var(--linha);border-radius:16px;padding:20px;margin-bottom:12px;display:flex;gap:18px;align-items:flex-start;transition:.15s}
.card:hover{border-color:#C3D2D0;box-shadow:0 3px 14px rgba(43,58,64,.06)}
.card .selo{width:52px;height:52px;border-radius:14px;flex:0 0 52px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:19px;color:#fff}
.card .info{flex:1;min-width:0}
.card h3{font-size:17.5px;font-weight:700;margin-bottom:3px}
.card .meta{font-size:13.5px;color:var(--corpo);margin-bottom:9px}
.card .meta .dist{font-weight:700;color:var(--emerald)}
.card .desc{font-size:14px;color:var(--corpo)}
.card .lado{text-align:right;flex:0 0 128px}
.card .off{font-size:26px;font-weight:800;color:var(--emerald);line-height:1}
.card .off span{font-size:14px;font-weight:600}
.card .eco{font-size:12.5px;color:var(--corpo);margin-top:4px}
.card .btn{margin-top:10px;display:block;width:100%;background:var(--grafite);color:#fff;border:0;border-radius:9px;padding:9px 0;font:600 13.5px inherit;cursor:pointer}
.card .btn:hover{background:var(--grafite2)}

.mapa{background:var(--branco);border:1px solid var(--linha);border-radius:16px;padding:18px;position:sticky;top:86px}
.mapa h4{font-size:15px;margin-bottom:4px}
.mapa p{font-size:13px;color:var(--corpo);margin-bottom:14px}
.mapa .tela{background:#EEF3F2;border-radius:12px;height:330px;position:relative;overflow:hidden;border:1px solid var(--linha)}
.pin{position:absolute;width:26px;height:26px;border-radius:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;color:#fff;font-size:11px;font-weight:700;border:2.5px solid #fff;box-shadow:0 1px 5px rgba(0,0,0,.2);cursor:pointer}
.eu{position:absolute;width:20px;height:20px;border-radius:50%;background:var(--grafite);border:4px solid #fff;transform:translate(-50%,-50%);box-shadow:0 0 0 8px rgba(43,58,64,.10)}
.legenda{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px;font-size:12.5px;color:var(--corpo)}
.legenda i{width:10px;height:10px;border-radius:50%;display:inline-block;margin-right:5px}

.aviso{background:#EAF3EF;border-left:5px solid var(--emerald);border-radius:0 12px 12px 0;padding:16px 18px;margin-top:16px;font-size:13.5px;color:var(--grafite);line-height:1.55}
.aviso b{display:block;color:var(--emerald);font-size:12.5px;margin-bottom:5px;letter-spacing:.03em}
.vazio{background:var(--branco);border:1px dashed #C3D2D0;border-radius:16px;padding:44px 24px;text-align:center;color:var(--corpo)}

footer{background:var(--grafite2);color:#8FA3AA;padding:30px 0;font-size:13.5px;line-height:1.7}

@media(max-width:900px){
  .corpo{grid-template-columns:1fr}
  .mapa{position:static;order:-1}
  .card{flex-wrap:wrap}
  .card .lado{flex:1 1 100%;text-align:left;display:flex;align-items:center;gap:14px}
  .card .btn{width:auto;padding:9px 20px;margin-top:0}
}

.idiomas{display:flex;gap:3px;background:#EEF1F0;border-radius:999px;padding:3px;margin-left:auto}
.idiomas button{background:none;border:0;padding:6px 11px;border-radius:999px;font:700 12.5px/1 inherit;color:#54666D;cursor:pointer;transition:.15s}
.idiomas button.on{background:#fff;color:#2B3A40;box-shadow:0 1px 4px rgba(43,58,64,.14)}
.nota-idioma{background:#E8F0EE;color:#1F4A40;text-align:center;padding:9px 20px;font-size:13px;display:none}
.barra-v2{background:#2B3A40;color:#fff;padding:13px 20px;text-align:center;font-size:14.5px;line-height:1.5}
.barra-v2 a{color:#9FE0C2;font-weight:700}
