@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@200;400;600;700&family=Playfair+Display:ital,wght@0,400;0,700;1,700&display=swap');
:root{
  --mint:#b6d6c6;
  --sage:#c9d6cc;
  --cream:#f3efe8;
  --pink:#e8c6dd;
  --lavender:#d9b8cf;
  --accent:#3b5a4f;
  --text:#222;
}
*{box-sizing:border-box}
body{
  margin:0;
  font-family: 'Montserrat', Arial, sans-serif;
  color:var(--text);
  background:#eceff0;
}
.header{
  background:linear-gradient(180deg,var(--mint),#d7e8db);
  padding:18px 0;
  border-bottom:6px solid rgba(0,0,0,0.06);
}
.header .top{
  max-width:1100px;
  margin:0 auto;
  padding:0 16px;
  display:flex;
  align-items:center;
  justify-content:space-between;
}
.brand{
  font-family: 'Playfair Display', serif;
  font-size:32px;
  letter-spacing:2px;
  font-weight:700;
  color:var(--accent);
}
.brand small{font-family:Montserrat; font-weight:300; font-size:14px; display:block; margin-top:-6px}
.nav{display:flex; gap:12px; align-items:center}
.nav a{background:rgba(0,0,0,0.06); padding:6px 12px; text-decoration:none; color:var(--accent); border-radius:4px; font-size:14px}
.hero{
  max-width:1100px;
  margin:26px auto;
  padding:16px;
  display:flex;
  gap:18px;
  justify-content:center;
}
.hero img{width:220px; height:220px; object-fit:cover; border-radius:6px; box-shadow:0 6px 0 rgba(0,0,0,0.06)}
.section{
  max-width:1100px;
  margin:26px auto;
  padding:16px;
  background:var(--sage);
  border-radius:4px;
  box-shadow:0 4px 0 rgba(0,0,0,0.03);
}
.section h2{
  font-family:'Playfair Display',serif;
  text-align:center;
  font-style:italic;
  letter-spacing:1px;
  margin:8px 0 14px 0;
  color:var(--accent);
}
.filterbar{
  display:flex;
  gap:12px;
  align-items:center;
  justify-content:flex-start;
  padding:8px;
  background:rgba(0,0,0,0.03);
  border-radius:4px;
  margin-bottom:14px;
}
.filterbar .brands{display:flex; gap:8px; align-items:center}
.filterbar button{border:none; padding:6px 10px; background:#e9e1df; cursor:pointer; border-radius:4px}
.filterbar .active{background:#bfa7a7; color:white; box-shadow:0 3px 0 rgba(0,0,0,0.08)}
.product-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(180px,1fr));
  gap:18px;
}
.card{
  background:var(--cream);
  padding:10px;
  border-radius:4px;
  text-align:center;
  box-shadow:0 6px 0 rgba(0,0,0,0.05);
}
.card img{width:100%; height:140px; object-fit:cover; border-radius:4px}
.card h3{margin:8px 0 4px 0; font-size:16px}
.card p{margin:4px 0; font-size:14px}
.card .info{display:inline-block; padding:8px 16px; background:#eee; border-radius:2px; text-decoration:none; color:var(--accent); margin-top:8px}
.contact-grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:18px}
.contact-box{background:var(--lavender); padding:18px; border-radius:4px; min-height:120px}
.contact-box h4{margin:0 0 8px 0}
.footer{
  max-width:1100px;
  margin:18px auto;
  padding:8px 16px;
  background:#fff;
  border-top:6px solid rgba(0,0,0,0.04);
  text-align:center;
  color:#666;
}
.bg-chooser{display:flex; gap:8px; align-items:center; justify-content:center}
.bg-option{padding:8px 12px; border-radius:4px; cursor:pointer; border:2px solid rgba(0,0,0,0.04)}
.bg-option input{margin-right:8px}
@media (max-width:640px){
  .hero{flex-direction:column; align-items:center}
}