/* El Trigal DS - Modern catalog */
:root{
  --bg:#f7f6f2;
  --card:#ffffff;
  --ink:#1f1f1f;
  --muted:#6b7280;
  --brand:#4a5d23;
  --brand2:#c9b56b;
  --warm:#f3ead7;
  --shadow:0 10px 24px rgba(0,0,0,.08);
  --radius:16px;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial, "Noto Sans", "Apple Color Emoji","Segoe UI Emoji";
  background:var(--bg);
  color:var(--ink);
}

a{color:inherit}

.header{
  background: radial-gradient(1200px 600px at 20% 0%, #fff 0%, var(--warm) 45%, #efe6d3 100%);
  border-bottom: 1px solid rgba(0,0,0,.05);
}
.headerInner{
  max-width:1100px;
  margin:0 auto;
  padding: 28px 18px;
  display:flex;
  gap:18px;
  align-items:center;
}
.logo{width:110px;height:auto;border-radius:14px;box-shadow:var(--shadow);background:#fff}
.headline h1{margin:0;font-size: clamp(22px, 3vw, 34px); color:var(--brand)}
.headline p{margin:8px 0 0; color:#334155; line-height:1.4}
.ctaRow{margin-top:14px; display:flex; gap:12px; align-items:center; flex-wrap:wrap}
.cta{
  background: linear-gradient(135deg, var(--brand) 0%, #3d4c1b 100%);
  color:#fff;
  text-decoration:none;
  padding:10px 14px;
  border-radius:999px;
  font-weight:700;
  box-shadow: 0 10px 18px rgba(74,93,35,.25);
}
.meta{color:var(--muted); font-size:14px}

.benefits{
  max-width:1100px;
  margin: 14px auto 0;
  padding: 0 18px;
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap:12px;
}
.benefitCard{
  background:var(--card);
  border-radius:var(--radius);
  padding:14px 14px;
  box-shadow:var(--shadow);
  display:flex;
  gap:12px;
  align-items:center;
  border:1px solid rgba(0,0,0,.05);
}
.benefitEmoji{font-size:22px}
.benefitCard span{color:var(--muted); font-size:14px}

.toolbar{
  max-width:1100px;
  margin: 14px auto 0;
  padding: 0 18px 10px;
  position: sticky;
  top: 0;
  z-index: 10;
  background: linear-gradient(to bottom, rgba(247,246,242,1), rgba(247,246,242,.85));
  backdrop-filter: blur(6px);
}
.searchWrap{
  background:var(--card);
  border-radius:var(--radius);
  padding: 12px 12px;
  box-shadow:var(--shadow);
  border:1px solid rgba(0,0,0,.05);
  display:flex;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
}
#searchInput{
  flex: 1 1 360px;
  padding: 12px 14px;
  border-radius: 12px;
  border:1px solid rgba(0,0,0,.12);
  font-size: 16px;
  outline:none;
}
#searchInput:focus{border-color: rgba(74,93,35,.55); box-shadow: 0 0 0 4px rgba(74,93,35,.12)}
#searchMeta{color:var(--muted)}

.chipsWrap{margin-top:10px}
.chips{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  justify-content:flex-start;
}
.chip{
  display:flex;
  align-items:center;
  gap:8px;
  padding: 8px 12px;
  border-radius: 999px;
  border:1px solid rgba(74,93,35,.35);
  background:#fff;
  cursor:pointer;
  transition: transform .08s ease, background .2s ease, border-color .2s ease;
  font-weight:700;
}
.chip img{width:22px;height:22px}
.chip span{font-size:14px}
.chip:hover{transform: translateY(-1px)}
.chip.active{
  background: linear-gradient(135deg, var(--brand) 0%, #3d4c1b 100%);
  color:#fff;
  border-color: transparent;
}
.chip.active img{filter: brightness(3)}

.catalog{
  max-width:1100px;
  margin: 10px auto 0;
  padding: 0 18px 28px;
}

.category{
  margin-top: 18px;
}
.categoryHeader{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:10px;
  margin-bottom: 10px;
}
.categoryTitle{display:flex; align-items:center; gap:10px}
.catIcon{width:28px;height:28px}
.category h2{margin:0; color:var(--brand); font-size:22px}
.categoryCount{color:var(--muted); font-size:14px}

.products{
  display:grid;
  grid-template-columns: repeat(4, 1fr);
  gap:12px;
}
.product{
  background:var(--card);
  border-radius:var(--radius);
  padding:14px;
  box-shadow:var(--shadow);
  border:1px solid rgba(0,0,0,.05);
  display:flex;
  flex-direction:column;
  gap:10px;
}
.productTop{
  display:flex;
  justify-content:space-between;
  align-items:center;
}
.productIcon{width:34px;height:34px}
.badge{
  font-size:12px;
  padding: 6px 10px;
  border-radius:999px;
  background: rgba(201,181,107,.25);
  color: #5b4b17;
  font-weight:800;
}
.pname{margin:0; font-size:15px; line-height:1.3}
.pcode{margin:0; color:var(--muted); font-size:13px}

.wa-btn{
  margin-top:auto;
  display:inline-flex;
  justify-content:center;
  align-items:center;
  gap:8px;
  background: linear-gradient(135deg, var(--brand) 0%, #3d4c1b 100%);
  color:#fff;
  text-decoration:none;
  padding: 10px 12px;
  border-radius: 12px;
  font-weight:900;
}

.empty{
  background:var(--card);
  border-radius:var(--radius);
  padding: 20px;
  box-shadow:var(--shadow);
  border:1px solid rgba(0,0,0,.05);
}

.footer{
  margin-top: 24px;
  background: #2f3b1c;
  color:#fff;
}
.footerInner{
  max-width:1100px;
  margin:0 auto;
  padding: 22px 18px;
}
.footerGrid{
  display:grid;
  grid-template-columns: repeat(2, 1fr);
  gap:14px;
  margin-top: 10px;
}
.footer h3{margin:0 0 6px}
.footer h4{margin:0 0 6px}
.muted{color: rgba(255,255,255,.85); margin:0; line-height:1.4}
.footer a{color:#f2d27d; text-decoration:none}

/* Responsive */
@media (max-width: 980px){
  .products{grid-template-columns: repeat(3, 1fr);}
  .benefits{grid-template-columns: 1fr; }
}
@media (max-width: 720px){
  .headerInner{flex-direction:column; align-items:flex-start}
  .logo{width:90px}
  .products{grid-template-columns: repeat(2, 1fr);}
}
@media (max-width: 420px){
  .products{grid-template-columns: 1fr;}
}
