/* Estilos base - paleta: verde olivo, vino, beige */
:root{
  --olive:#6b7a40;
  --wine:#6f1d1b;
  --beige:#f3efe7;
  --ink:#1d1d1f;
  --muted:#6b7280;
  --white:#fff;
}

*{box-sizing:border-box}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,'Helvetica Neue',Arial,'Noto Sans',sans-serif;color:var(--ink);background:var(--beige)}
a{color:var(--wine);text-decoration:none}
a.btn{background:var(--olive);color:#fff;padding:.6rem 1rem;border-radius:.75rem}
a.btn:hover{opacity:.9}

.wrap{max-width:1100px;margin:0 auto;padding:0 1rem}

.site-header{background:#fff;border-bottom:1px solid #e5e7eb;position:sticky;top:0;z-index:10}
.site-header .wrap{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem}
.brand{display:flex;align-items:center;gap:.5rem;font-weight:700;color:var(--ink)}
.logo{width:40px;height:40px;object-fit:contain;border-radius:.5rem;background:#fff}
.nav a{margin:0 .5rem}
.nav a.btn{margin-left:1rem}

.hero{padding:3rem 0;background:linear-gradient(180deg,#fff,transparent)}
.hero h1{font-size:2rem;margin:.5rem 0}
.hero p{color:var(--muted);max-width:60ch}

.grid{display:grid;gap:1rem}
.grid.cards{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}

.card{background:#fff;border:1px solid #e5e7eb;border-radius:1rem;overflow:hidden;display:flex;flex-direction:column}
.card img{width:100%;height:180px;object-fit:cover;background:#f5f5f5}
.card .pad{padding:1rem}
.card h3{margin:.25rem 0 0 0;font-size:1.1rem}
.price{color:var(--wine);font-weight:700}
.meta{color:var(--muted);font-size:.9rem}

.filters{background:#fff;border:1px solid #e5e7eb;border-radius:1rem;padding:1rem;display:grid;gap:.75rem;margin:1rem 0}
.filters .row{display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}
.filters label{display:flex;flex-direction:column;font-size:.9rem;color:var(--muted)}
.filters input,.filters select{padding:.6rem;border:1px solid #e5e7eb;border-radius:.5rem}
.filters button{padding:.7rem 1rem;border:0;border-radius:.6rem;background:var(--olive);color:#fff;cursor:pointer}
.filters button.secondary{background:#334155}

.section{padding:2rem 0}

.site-footer{background:#fff;border-top:1px solid #e5e7eb;margin-top:2rem}
.site-footer .footer-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));padding:1.5rem 1rem}
