:root{--verde:#63991f;--verde2:#7ab52a;--txt:#222;--muted:#666;--linea:#e3e3e3;--wa:#25d366}
*{box-sizing:border-box}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--txt);background:#fff}
a{color:inherit;text-decoration:none}

.topbar{display:flex;align-items:center;gap:16px;padding:12px 20px;border-bottom:1px solid var(--linea)}
.logo{display:flex;align-items:center;gap:8px;font-weight:bold;color:var(--verde)}
.logo img{height:34px}
.search{flex:1;display:flex;max-width:640px}
.search input{flex:1;padding:9px 12px;border:1px solid var(--linea);border-radius:6px 0 0 6px}
.search button{padding:9px 18px;border:0;background:var(--verde);color:#fff;border-radius:0 6px 6px 0;cursor:pointer}
.negocio{color:var(--muted);font-size:13px}

.wrap{display:flex;gap:20px;max-width:1200px;margin:0 auto;padding:16px 20px}
.cats{width:200px;flex-shrink:0}
.cats ul{list-style:none;margin:0;padding:0}
.cats li a{display:block;padding:9px 12px;border-bottom:1px solid var(--linea);color:var(--muted)}
.cats li a:hover{color:var(--verde)}
.content{flex:1}

.banner{margin-bottom:16px}
.mosaicos{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px}
.mos{position:relative;height:120px;border-radius:8px;overflow:hidden;background:#eef6e6;display:flex;align-items:flex-end;padding:10px;font-weight:bold;color:var(--verde)}
.mos img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.85}
.mos span{position:relative;z-index:1;background:rgba(255,255,255,.8);padding:2px 8px;border-radius:4px}

.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.prod{border:1px solid var(--linea);border-radius:10px;padding:10px;display:block}
.prod:hover{border-color:var(--verde)}
.prod .ph{height:150px;display:flex;align-items:center;justify-content:center;background:#f6f6f6;border-radius:6px;overflow:hidden}
.prod .ph img{max-width:100%;max-height:100%;object-fit:contain}
.prod .nm{margin-top:8px;font-size:14px;min-height:36px}
.prod .pr{font-weight:bold;font-size:16px}
.badge{display:inline-block;margin-top:6px;font-size:11px;padding:2px 8px;border-radius:4px}
.badge.ok{background:#e6f4d9;color:#3b6d11}
.badge.no{background:#fbe1e1;color:#a32d2d}

.detalle{display:flex;gap:24px;flex-wrap:wrap}
.detalle .foto{flex:1;min-width:280px;max-width:460px}
.detalle .foto img{width:100%;border:1px solid var(--linea);border-radius:10px}
.detalle .info{flex:1;min-width:260px}
.detalle .precio{font-size:26px;font-weight:bold;margin:8px 0}
.detalle .desc{color:var(--muted);line-height:1.6}
.wa-btn{display:inline-block;margin-top:16px;background:var(--wa);color:#fff;padding:12px 20px;border-radius:8px;font-weight:bold}

.foot{margin-top:30px;padding:20px;background:#1e1e1e;color:#bbb;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}

.wa{position:fixed;right:18px;bottom:18px;background:var(--wa);color:#fff;padding:12px 16px;border-radius:30px;font-weight:bold;box-shadow:0 2px 8px rgba(0,0,0,.25)}

@media(max-width:900px){
  .wrap{flex-direction:column}
  .cats{width:100%}
  .mosaicos,.grid{grid-template-columns:repeat(2,1fr)}
}
