:root{
  --accent:#00b4ff;
  --accent2:#008cff;

  --text:#ffffff;

  --headerH:74px;

  --menuBg: rgba(2,8,23,0.82);
  --menuBorder: rgba(0,180,255,0.16);
}

body.menu-open{ overflow:hidden; }

/* ================= HEADER ================= */
.bp-header{
  position:fixed;
  top:0;left:0;right:0;
  height:var(--headerH);
  display:flex;
  align-items:center;
  z-index:5000;
  background:rgba(2,8,23,0.45);
  backdrop-filter:blur(8px);
  border-bottom:1px solid rgba(0,180,255,0.10);
  transition: background .2s ease, backdrop-filter .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.bp-header.scrolled{
  background:rgba(2,8,23,0.75);
  backdrop-filter:blur(14px);
  border-bottom:1px solid rgba(0,180,255,0.20);
  box-shadow:0 10px 30px rgba(0,0,0,0.25);
}

.bp-header-inner{
  width:min(1200px,92vw);
  margin:auto;
  display:flex;
  align-items:center;
  gap:12px;
  justify-content:flex-start;
}

.bp-brand{ display:flex; align-items:center; text-decoration:none; }
.bp-brand img{
  height:34px;
  width:auto;
  display:block;
  object-fit:contain;
  filter:none;
}

.bp-nav{
  margin-left:auto;
  display:flex;
  align-items:center;
  gap:10px;
}

.bp-nav a{
  text-decoration:none;
  color:rgba(205,230,255,.9);
  font-weight:800;
  padding:10px 14px;
  border-radius:999px;
  border:1px solid transparent;
  transition: background .18s ease, transform .18s ease, border-color .18s ease, color .18s ease, box-shadow .18s ease;
  white-space:nowrap;
}
.bp-nav a:hover{
  background:rgba(0,180,255,.12);
  border-color:rgba(0,180,255,.18);
  color:#fff;
  transform:translateY(-1px);
}

/* Highlight / CTA */
.bp-nav a.cta{
  background:linear-gradient(90deg,var(--accent2),var(--accent));
  color:#fff;
  border-color:rgba(0,200,255,.25);
  box-shadow:0 0 18px rgba(0,170,255,.30);
}
.bp-nav a.cta:hover{
  box-shadow:0 0 26px rgba(0,200,255,.45);
}

/* Active Link */
.bp-nav a.active{
  background:rgba(0,180,255,.12);
  border-color:rgba(0,180,255,.22);
  color:#fff;
}

/* ===== Burger Button (nur Mobile) ===== */
.burger{
  display:none;
  margin-left:10px;
  width:44px;
  height:44px;
  border-radius:12px;
  border:1px solid rgba(0,180,255,0.18);
  background:rgba(0, 18, 45, 0.25);
  backdrop-filter: blur(10px);
  cursor:pointer;
  align-items:center;
  justify-content:center;
  gap:7px;
}
.burger span{
  display:block;
  width:6px;
  height:6px;
  border-radius:999px;
  background:rgba(205,230,255,0.92);
  box-shadow: 0 0 12px rgba(0,180,255,0.16);
  transition: transform .18s ease, opacity .18s ease;
}
/* ===== Mobile Menu ===== */
.mobile-overlay{
  position:fixed;
  inset:0;
  z-index:4990;
  background: rgba(0,0,0,0.35);
  opacity:0;
  pointer-events:none;
  transition: opacity .18s ease;
}
.mobile-overlay.open{
  opacity:1;
  pointer-events:auto;
}

.mobile-menu{
  position:fixed;
  left:0; right:0;
  top: var(--headerH);
  z-index:4995;
  background: var(--menuBg);
  border-bottom: 1px solid var(--menuBorder);
  backdrop-filter: blur(16px);
  transform: translateY(-10px);
  opacity:0;
  pointer-events:none;
  transition: transform .18s ease, opacity .18s ease;
}
.mobile-menu.open{
  transform: translateY(0);
  opacity:1;
  pointer-events:auto;
}

.mobile-menu .wrap{
  width:min(1200px,92vw);
  margin: 0 auto;
  padding: 12px 0 16px;
  display:flex;
  flex-direction:column;
  gap:10px;
}

.mobile-menu a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  text-decoration:none;
  color: rgba(205,230,255,0.92);
  font-weight:900;
  padding: 12px 12px;
  border-radius: 14px;
  border: 1px solid rgba(0,180,255,0.12);
  background: rgba(0,180,255,0.06);
}
.mobile-menu a:hover{
  border-color: rgba(0,180,255,0.22);
  background: rgba(0,180,255,0.10);
  color:#fff;
}
.mobile-menu a.cta{
  background: linear-gradient(90deg,var(--accent2),var(--accent));
  border-color: rgba(0,200,255,0.25);
  color:#fff;
}
.mobile-menu small{
  color: rgba(205,230,255,0.70);
  font-weight:700;
}


/* ===== Responsive ===== */
@media (max-width: 820px){
  .bp-nav{ display:none; }
  .burger{ display:flex; margin-left:auto; }
  .bp-brand img{ height:30px; }
}