
/*
 * Noventra Premium Header Fix
 * Retter både:
 * - Forsiden: .nvp-header
 * - Side 2: .n2-topbar
 */

/* Gør headerne markant tydeligere og sticky */
.nvp-header,
.n2-topbar {
  position: sticky !important;
  top: 14px !important;
  z-index: 9999 !important;

  min-height: 96px !important;
  padding: 0 28px !important;

  border: 1px solid rgba(220, 132, 164, .24) !important;
  border-radius: 24px !important;

  background:
    linear-gradient(
      135deg,
      rgba(55, 8, 25, .96),
      rgba(27, 5, 14, .98)
    ) !important;

  -webkit-backdrop-filter: blur(26px) saturate(135%) !important;
  backdrop-filter: blur(26px) saturate(135%) !important;

  box-shadow:
    0 22px 65px rgba(0, 0, 0, .42),
    0 0 0 1px rgba(255, 255, 255, .025) inset,
    0 1px 0 rgba(255, 255, 255, .10) inset,
    0 0 42px rgba(140, 25, 67, .12) !important;

  transform: none !important;
}

/* Mere luft over første indhold, fordi headeren er større */
.nvp-hero-grid {
  padding-top: 92px !important;
}

.n2-hero-grid {
  padding-top: 112px !important;
}

/* Større og mere tydeligt logo */
.nvp-brand,
.n2-brand {
  gap: 15px !important;
  font-size: 24px !important;
  font-weight: 850 !important;
  letter-spacing: -.035em !important;
  color: #fff !important;
  text-shadow: 0 2px 18px rgba(0,0,0,.26);
}

.nvp-mark,
.n2-brandmark {
  width: 54px !important;
  height: 54px !important;
  min-width: 54px !important;
  border-radius: 16px !important;

  font-size: 29px !important;
  line-height: 1 !important;

  background:
    linear-gradient(
      145deg,
      #b23a67 0%,
      #7e1839 48%,
      #4f0b21 100%
    ) !important;

  border: 1px solid rgba(255,255,255,.14) !important;

  box-shadow:
    0 14px 30px rgba(0, 0, 0, .38),
    0 0 24px rgba(179, 53, 100, .22),
    inset 0 1px 0 rgba(255, 255, 255, .30) !important;
}

/* Menuen bliver lysere og nemmere at læse */
.nvp-nav,
.n2-nav {
  gap: 36px !important;
}

.nvp-nav a,
.n2-nav a,
.nvp-login {
  position: relative !important;

  color: rgba(255,255,255,.86) !important;
  font-size: 15px !important;
  font-weight: 720 !important;
  letter-spacing: -.012em !important;
  line-height: 1 !important;

  text-shadow: 0 1px 12px rgba(0,0,0,.28);
  transition:
    color .22s ease,
    transform .22s ease !important;
}

.nvp-nav a::after,
.n2-nav a::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 100% !important;
  bottom: -10px !important;
  height: 2px !important;

  border-radius: 999px !important;
  background: linear-gradient(90deg, #d57f9e, #9b2e55) !important;

  transition: right .24s ease !important;
}

.nvp-nav a:hover,
.n2-nav a:hover,
.nvp-login:hover {
  color: #fff !important;
  transform: translateY(-1px) !important;
}

.nvp-nav a:hover::after,
.n2-nav a:hover::after {
  right: 0 !important;
}

/* Større CTA */
.nvp-head-actions,
.n2-topbar {
  align-items: center !important;
}

.nvp-head-actions {
  gap: 20px !important;
}

.nvp-small-cta,
.n2-top-cta {
  min-height: 52px !important;
  padding: 0 23px !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  border-radius: 16px !important;

  color: #fff !important;
  font-size: 15px !important;
  font-weight: 850 !important;

  background:
    linear-gradient(
      135deg,
      #b53b68,
      #7d1738 57%,
      #5e0f2a
    ) !important;

  border: 1px solid rgba(255,255,255,.18) !important;

  box-shadow:
    0 16px 36px rgba(79, 7, 30, .43),
    inset 0 1px 0 rgba(255,255,255,.24) !important;
}

.nvp-small-cta:hover,
.n2-top-cta:hover {
  filter: brightness(1.10) !important;
  transform: translateY(-2px) !important;
  box-shadow:
    0 20px 45px rgba(95, 8, 37, .52),
    inset 0 1px 0 rgba(255,255,255,.30) !important;
}

/* Tydelig login-knap */
.nvp-login {
  min-height: 46px !important;
  padding: 0 8px !important;

  display: inline-flex !important;
  align-items: center !important;
}

/* Mere tydelig afstand mellem header og browserens top */
.nvp-shell,
.n2-shell {
  position: relative !important;
}

/* WordPress adminbar */
.admin-bar .nvp-header,
.admin-bar .n2-topbar {
  top: 46px !important;
}

/* Tablet */
@media (max-width: 1100px) {
  .nvp-header,
  .n2-topbar {
    min-height: 88px !important;
    padding: 0 20px !important;
  }

  .nvp-brand,
  .n2-brand {
    font-size: 22px !important;
  }

  .nvp-mark,
  .n2-brandmark {
    width: 50px !important;
    height: 50px !important;
    min-width: 50px !important;
  }
}

/* Mobil */
@media (max-width: 720px) {
  .nvp-header,
  .n2-topbar {
    top: 8px !important;
    min-height: 76px !important;
    padding: 0 12px !important;
    border-radius: 19px !important;
  }

  .admin-bar .nvp-header,
  .admin-bar .n2-topbar {
    top: 52px !important;
  }

  .nvp-brand,
  .n2-brand {
    gap: 10px !important;
    font-size: 19px !important;
  }

  .nvp-mark,
  .n2-brandmark {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    border-radius: 13px !important;
    font-size: 23px !important;
  }

  .nvp-small-cta,
  .n2-top-cta {
    min-height: 45px !important;
    padding: 0 14px !important;
    border-radius: 13px !important;
    font-size: 13px !important;
  }

  .nvp-login {
    display: none !important;
  }

  .nvp-hero-grid {
    padding-top: 68px !important;
  }

  .n2-hero-grid {
    padding-top: 82px !important;
  }
}
