:root{
  --navy:#031525; --navy-2:#061f34; --green:#009b4f; --green-2:#16c76f; --yellow:#ffc928;
  --text:#0b1625; --muted:#64748b; --line:#e6edf5; --soft:#f6f9fc; --white:#fff;
  --shadow:0 16px 40px rgba(3,21,37,.10); --radius:18px;
}
*{box-sizing:border-box} body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;background:#fff;color:var(--text)}
a{text-decoration:none;color:inherit} img{max-width:100%;display:block}.topbar{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 42px;border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:50}.brand{display:flex;gap:12px;align-items:center}.brand strong{font-size:27px;line-height:1}.brand b{color:var(--green)}.brand small{display:block;font-size:12px;color:var(--muted);margin-top:2px}.pin{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--green),#006d38);color:#fff;border:4px solid #f2f7f2}.nav{display:flex;gap:28px;font-size:14px}.nav a:hover{color:var(--green)}.actions{display:flex;gap:12px}.btn{border:1px solid var(--line);border-radius:9px;padding:11px 18px;font-weight:800;font-size:14px}.btn.outline{background:#fff;border-color:#0b1625}.btn.solid{background:var(--green);color:#fff;border-color:var(--green)}.btn.big{font-size:16px;padding:14px 24px}.hero{position:relative;min-height:440px;background:linear-gradient(110deg,rgba(3,21,37,.96),rgba(3,21,37,.68)),url('../img/hero-rs.svg');background-size:cover;background-position:center;color:#fff}.hero-content{position:relative;z-index:2;max-width:1210px;margin:0 auto;padding:58px 28px;display:grid;grid-template-columns:1.1fr .9fr;gap:46px;align-items:center}.eyebrow{color:#a7f3c8;font-weight:800;margin:0 0 12px}.hero h1{font-size:46px;line-height:1.08;margin:0 0 16px;letter-spacing:-1.5px}.hero p{font-size:18px;line-height:1.5;color:#d9e7f5;max-width:720px}.search-box{margin-top:28px;background:#fff;border-radius:14px;padding:8px;display:grid;grid-template-columns:1.2fr .9fr .9fr 130px;gap:6px;box-shadow:var(--shadow)}.search-box label{display:flex;flex-direction:column;border-right:1px solid var(--line);padding:7px 10px}.search-box label:last-of-type{border-right:0}.search-box span{font-size:11px;color:#667085;margin-bottom:3px}.search-box input,.search-box select{border:0;outline:0;font-size:14px;color:#0b1625;background:#fff}.search-box button{border:0;border-radius:10px;background:var(--green);color:#fff;font-weight:900;cursor:pointer}.chips{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px}.chip{font-size:13px;border:1px solid rgba(255,255,255,.35);padding:8px 13px;border-radius:999px;background:rgba(255,255,255,.09)}.chip.active,.chip:hover{background:var(--green);border-color:var(--green)}.state-card{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.22);border-radius:28px;padding:24px;box-shadow:0 20px 55px rgba(0,0,0,.22)}.state-map-art{height:320px;border-radius:22px;background:radial-gradient(circle at 55% 45%,rgba(0,155,79,.35),transparent 33%),linear-gradient(135deg,#f6f3e8,#fefdf7);position:relative;color:#072033;overflow:hidden}.state-map-art:before{content:"";position:absolute;inset:40px;background:rgba(255,255,255,.68);clip-path:polygon(52% 4%,75% 15%,95% 38%,88% 58%,73% 70%,72% 91%,56% 77%,34% 81%,18% 66%,7% 42%,21% 21%);filter:drop-shadow(0 14px 20px rgba(0,0,0,.15))}.map-title{position:absolute;left:22px;top:18px;font-size:22px;font-weight:900}.map-sub{position:absolute;left:22px;top:48px;color:#52606d;font-size:13px}.city-dot{position:absolute;width:38px;height:38px;border-radius:50%;background:var(--green);color:#fff;font-size:12px;font-weight:900;display:grid;place-items:center;border:4px solid #e7fff1;box-shadow:0 8px 16px rgba(0,0,0,.2);z-index:2}.dot-1{left:66%;top:48%}.dot-2{left:54%;top:35%}.dot-3{left:62%;top:68%}.dot-4{left:46%;top:52%}.dot-5{left:58%;top:25%}.dot-6{left:38%;top:43%}.dot-7{left:73%;top:23%}.trust-row{max-width:1210px;margin:0 auto;padding:24px 28px;display:grid;grid-template-columns:repeat(4,1fr);gap:18px;border-bottom:1px solid var(--line)}.trust-row div{padding:14px 18px;border-right:1px solid var(--line)}.trust-row div:last-child{border-right:0}.trust-row strong{display:block;font-size:15px}.trust-row span{display:block;font-size:13px;color:var(--muted);margin-top:6px}.section{max-width:1210px;margin:0 auto;padding:34px 28px}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:34px}.section-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.section-head h2{margin:0;font-size:25px}.section-head a{color:#005bbb;font-size:14px;font-weight:800}.category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.category-card{height:112px;border:1px solid var(--line);background:#fff;border-radius:18px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;box-shadow:0 8px 25px rgba(15,23,42,.04)}.category-card span{font-size:28px}.category-card strong{font-size:14px}.category-card.active,.category-card:hover{border-color:var(--green);box-shadow:0 16px 40px rgba(0,155,79,.12)}.map-panel{background:var(--soft);border:1px solid var(--line);border-radius:var(--radius);padding:14px}.real-map{height:330px;border-radius:14px;border:1px solid #dae4ef;overflow:hidden}.map-note{font-size:13px;color:var(--muted);margin:10px 4px 0}.cards-row,.promo-row{display:grid;grid-template-columns:repeat(5,1fr);gap:20px}.business-card,.promo-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 10px 28px rgba(15,23,42,.06)}.business-card>img,.promo-card>img{height:150px;width:100%;object-fit:cover;background:#e9eef5}.tag,.discount{position:absolute;left:10px;top:10px;z-index:2;background:var(--green);color:#fff;border-radius:7px;padding:5px 9px;font-size:12px;font-weight:900}.discount{background:#ef4444}.card-body{position:relative;padding:34px 14px 14px}.avatar{position:absolute;top:-27px;left:14px;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:#083656;color:#fff;border:4px solid #fff;font-weight:900}.business-card h3,.promo-card h3{margin:0 0 5px;font-size:17px}.business-card p,.promo-card p{margin:0 0 8px;color:var(--muted);font-size:13px}.rating{font-size:13px;color:#f59e0b;font-weight:800}.rating span{color:var(--muted);font-weight:600}.location{font-size:13px;color:var(--muted);margin-top:7px}.card-actions{display:flex;gap:8px;margin-top:13px}.mini{font-size:12px;font-weight:900;border:1px solid var(--line);border-radius:8px;padding:8px 10px}.mini.whatsapp{color:var(--green)}.promo-card div{padding:14px}.validade{display:inline-block;background:#e8f8ef;color:#087a3f;border-radius:7px;padding:5px 8px;font-size:12px;font-weight:900}.empty{grid-column:1/-1;background:#fff8e1;border:1px solid #f8df91;border-radius:12px;padding:18px;color:#775900}.how{max-width:1210px;margin:0 auto;padding:32px 28px}.how h2{margin-top:0}.how-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.how-grid div{border:1px solid var(--line);border-radius:16px;padding:20px;background:#fff}.how-grid strong{display:block;margin-bottom:8px}.how-grid span{color:var(--muted);font-size:14px}.cta{background:var(--navy);color:#fff;margin-top:30px;padding:34px max(28px,calc((100vw - 1210px)/2 + 28px));display:flex;justify-content:space-between;align-items:center}.cta h2{margin:0 0 8px}.cta p{margin:0;color:#c7d2df;max-width:660px}.footer{max-width:1210px;margin:0 auto;padding:32px 28px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px;color:#334155}.footer strong{color:#0b1625}.footer p{color:#64748b;font-size:14px}.leaflet-popup-content b{font-size:15px}.popup-actions{display:flex;gap:8px;margin-top:8px}.popup-actions a{font-weight:800;color:var(--green)}
@media(max-width:1050px){.nav{display:none}.hero-content,.grid-2{grid-template-columns:1fr}.search-box{grid-template-columns:1fr}.search-box label{border-right:0;border-bottom:1px solid var(--line)}.cards-row,.promo-row{grid-template-columns:repeat(2,1fr)}.trust-row,.how-grid{grid-template-columns:repeat(2,1fr)}.category-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:640px){.topbar{padding:0 16px}.actions{display:none}.hero h1{font-size:32px}.cards-row,.promo-row,.trust-row,.how-grid,.footer{grid-template-columns:1fr}.category-grid{grid-template-columns:repeat(2,1fr)}.cta{display:block}.cta .btn{display:inline-block;margin-top:18px}}
