:root{
  --nv-bg:#0b0b0b;
  --nv-bg-2:#121212;
  --nv-border:#e6e6e6;
  --nv-muted:#666;
  --nv-accent:#76b900;
  --nv-accent-hover:#5a8f00;
}

/* HEADER */
header, .header, .top-nav, .navbar {
  background: var(--nv-bg) !important;
}
header a, .header a, .top-nav a {
  color:#fff !important;
}
header svg, .header svg { fill:#fff !important; }

/* BUTTONS */
.btn-primary, .primary-button, button[type=submit], .add-to-cart-btn{
  background:var(--nv-accent) !important;
  color:#000 !important;
  font-weight:800 !important;
  border:0 !important;
  border-radius:2px !important;
}
.btn-primary:hover, .primary-button:hover, .add-to-cart-btn:hover{
  background:var(--nv-accent-hover) !important;
}

/* PRODUCT CARDS */
.product-card, .product-item, .product-grid-item, .card{
  border:1px solid var(--nv-border) !important;
  border-radius:3px !important;
  box-shadow:none !important;
}

/* CATALOG GRID (useremo classi dopo) */
.nv-catalog{
  max-width:1200px;
  margin:0 auto;
  padding:32px 24px;
  display:grid;
  grid-template-columns:260px 1fr;
  gap:28px;
}
.nv-filters{ border-right:1px solid var(--nv-border); padding-right:18px; }
.nv-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }

@media (max-width:1024px){
  .nv-catalog{ grid-template-columns:1fr; }
  .nv-grid{ grid-template-columns:repeat(2,1fr); }
}
@media (max-width:640px){
  .nv-grid{ grid-template-columns:1fr; }
}
