:root{
  --je-black:#0b0b0d;
  --je-gold:#b08a3c;
  --je-gray:#8f949c;
}
body{ font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; }
.navbar{
  background: rgba(11,11,13,.9)!important;
  backdrop-filter: blur(8px);
}
.navbar-brand img{ height: 42px; }
.hero{
  position:relative;
  min-height: 72vh;
  display:flex;
  align-items:center;
  color:white;
  overflow:hidden;
  background:
    radial-gradient(1200px 600px at 20% 20%, rgba(176,138,60,.25), transparent 60%),
    radial-gradient(900px 600px at 80% 60%, rgba(120,160,255,.15), transparent 60%),
    linear-gradient(180deg, rgba(0,0,0,.65), rgba(0,0,0,.35));
}
.hero .hero-bg{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  z-index:-2;
  filter: saturate(1.05) contrast(1.05) brightness(.75);
}
.hero::after{
  content:"";
  position:absolute;
  inset:0;
  background: radial-gradient(600px 400px at 35% 55%, rgba(176,138,60,.25), transparent 60%);
  z-index:-1;
}
.badge-je{
  background: rgba(176,138,60,.15);
  border: 1px solid rgba(176,138,60,.45);
  color: #f5e7c6;
}
.card{
  border:1px solid rgba(255,255,255,.08);
  box-shadow: 0 10px 30px rgba(0,0,0,.25);
  border-radius: 16px;
}
.card img{
  border-top-left-radius: 16px;
  border-top-right-radius: 16px;
}
.section-title{ letter-spacing:.2px; }
.kpi{
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.12);
  background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.02));
  padding: 14px 16px;
}
.kpi .label{ color: var(--je-gray); font-size:.9rem; }
.kpi .value{ font-weight:700; font-size:1.05rem; }
.footer{
  background: var(--je-black);
  color: rgba(255,255,255,.75);
}
a{ text-decoration:none; }
a:hover{ text-decoration:underline; }
.btn-je{
  background: var(--je-gold);
  border-color: var(--je-gold);
  color: #111;
  font-weight: 650;
}
.btn-je:hover{ filter: brightness(.95); color:#111; }
.product-hero{
  border-radius: 18px;
  overflow:hidden;
  border: 1px solid rgba(255,255,255,.1);
}
.product-hero img{ width:100%; height:auto; display:block; }
.specs-grid{
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 12px;
}
.muted{ color: rgba(255,255,255,.72); }
.progress{ height: 10px; }
.form-text{ color: rgba(255,255,255,.6) !important; }
