/* NC Gulve Navigation - alle selectors er ncg-prefixede, saa intet kolliderer med Elementor */

#ncg-nav-root{
  --ncg-blaa:#042C53;
  --ncg-blaa-moerk:#021D38;
  --ncg-blaa-lys:#E8EFF6;
  --ncg-ink:#1D1D1F;
  --ncg-graa:#6E6E73;
  --ncg-linje:#E8E8EA;
  --ncg-radius:14px;
  --ncg-nav-h:60px;
  --ncg-ease:cubic-bezier(.32,.72,.24,1);
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
}
#ncg-nav-root *,#ncg-nav-root *::before,#ncg-nav-root *::after{margin:0;padding:0;box-sizing:border-box;}
#ncg-nav-root a{text-decoration:none;color:inherit;}
#ncg-nav-root ul{list-style:none;}
#ncg-nav-root button{font-family:inherit;font-size:inherit;text-transform:none;box-shadow:none;background:none;border:0;cursor:pointer;color:inherit;}

/* ---------- NAV (hvid glas) ---------- */
#ncg-nav-root .ncg-nav-wrap{position:sticky;top:0;z-index:9990;}
body.admin-bar #ncg-nav-root .ncg-nav-wrap{top:32px;}
@media(max-width:782px){body.admin-bar #ncg-nav-root .ncg-nav-wrap{top:46px;}}
#ncg-nav-root .ncg-nav{
  height:var(--ncg-nav-h);
  background:#FFFFFF;
  border-bottom:1px solid rgba(0,0,0,.06);
  display:flex;align-items:center;
  padding:0 max(24px,calc(50vw - 590px));
  gap:8px;
  position:relative;
}
#ncg-nav-root .ncg-logo{display:flex;align-items:center;margin-right:20px;flex-shrink:0;}
#ncg-nav-root .ncg-logo img{height:38px;width:auto;display:block;}

#ncg-nav-root .ncg-menu{display:flex;align-items:center;gap:4px;flex:1;}
#ncg-nav-root .ncg-menu > li{position:static;}
#ncg-nav-root .ncg-menu > li > a,
#ncg-nav-root .ncg-menu > li > button{
  display:block;padding:10px 14px;font-size:14.5px;font-weight:450;
  color:#3a3a3c;border-radius:99px;letter-spacing:-.01em;line-height:1.3;
  transition:color .18s,background .18s;
}
#ncg-nav-root .ncg-menu > li > a:hover,
#ncg-nav-root .ncg-menu > li > button:hover,
#ncg-nav-root .ncg-menu > li.ncg-open > button{color:var(--ncg-ink);background:rgba(0,0,0,.045);}
#ncg-nav-root .ncg-menu > li > a:focus-visible,
#ncg-nav-root .ncg-menu > li > button:focus-visible{outline:2px solid var(--ncg-blaa);outline-offset:2px;}

#ncg-nav-root .ncg-cta{display:flex;align-items:center;gap:10px;margin-left:auto;flex-shrink:0;}
#ncg-nav-root .ncg-tel{
  font-size:14px;font-weight:500;color:var(--ncg-blaa);
  display:flex;align-items:center;gap:7px;padding:8px 10px;border-radius:99px;
  transition:background .18s;
}
#ncg-nav-root .ncg-tel:hover{background:var(--ncg-blaa-lys);}
#ncg-nav-root .ncg-btn{
  background:var(--ncg-blaa);color:#fff !important;font-size:14px;font-weight:500;
  padding:9px 18px;border-radius:99px;letter-spacing:-.01em;line-height:1.3;
  transition:background .18s,transform .18s;
}
#ncg-nav-root .ncg-btn:hover{background:var(--ncg-blaa-moerk);transform:translateY(-1px);}

/* ---------- DESKTOP FLYOUT ---------- */
#ncg-nav-root .ncg-flyout{
  position:absolute;left:0;right:0;top:100%;
  background:#FFFFFF;
  border-bottom:1px solid rgba(0,0,0,.06);
  box-shadow:0 24px 48px -24px rgba(15,59,102,.18);
  overflow:hidden;
  max-height:0;opacity:0;
  transition:max-height .45s var(--ncg-ease),opacity .3s;
  pointer-events:none;
}
#ncg-nav-root .ncg-menu > li.ncg-open .ncg-flyout{max-height:420px;opacity:1;pointer-events:auto;}
#ncg-nav-root .ncg-flyout-inner{
  max-width:1180px;margin:0 auto;
  display:flex;gap:64px;
  padding:36px 24px 44px;
}
#ncg-nav-root .ncg-fly-col{min-width:150px;}
#ncg-nav-root .ncg-eyebrow{
  font-size:11.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;
  color:var(--ncg-graa);margin-bottom:14px;
}
#ncg-nav-root .ncg-eyebrow-gap{margin-top:22px;}
#ncg-nav-root .ncg-fly-col ul li{margin-bottom:2px;}
#ncg-nav-root .ncg-fly-col ul a{
  display:inline-block;padding:5px 0;
  font-size:17px;font-weight:600;letter-spacing:-.015em;color:var(--ncg-ink);
  transition:color .15s;
}
#ncg-nav-root .ncg-fly-col ul a:hover{color:var(--ncg-blaa);}
#ncg-nav-root .ncg-fly-col ul.ncg-small a{font-size:13.5px;font-weight:450;color:#515154;}
#ncg-nav-root .ncg-fly-col ul.ncg-small a:hover{color:var(--ncg-blaa);}

#ncg-nav-root .ncg-fly-card{
  margin-left:auto;
  background:linear-gradient(145deg,var(--ncg-blaa) 0%,var(--ncg-blaa-moerk) 100%);
  color:#fff;border-radius:var(--ncg-radius);
  padding:24px 26px;width:270px;
  display:flex;flex-direction:column;justify-content:space-between;gap:18px;
}
#ncg-nav-root .ncg-fly-card h4{font-family:inherit;font-size:17px;font-weight:600;letter-spacing:-.01em;line-height:1.3;color:#fff;}
#ncg-nav-root .ncg-fly-card p{font-size:13px;opacity:.75;line-height:1.5;margin-top:6px;color:#fff;}
#ncg-nav-root .ncg-fly-card a{
  align-self:flex-start;font-size:13.5px;font-weight:500;color:#fff;
  background:rgba(255,255,255,.14);padding:8px 15px;border-radius:99px;
  transition:background .18s;
}
#ncg-nav-root .ncg-fly-card a:hover{background:rgba(255,255,255,.24);}

#ncg-nav-root .ncg-flyout-inner > *{opacity:0;transform:translateY(6px);transition:opacity .35s,transform .35s;}
#ncg-nav-root .ncg-menu > li.ncg-open .ncg-flyout-inner > *{opacity:1;transform:none;}
#ncg-nav-root .ncg-menu > li.ncg-open .ncg-flyout-inner > *:nth-child(1){transition-delay:.06s;}
#ncg-nav-root .ncg-menu > li.ncg-open .ncg-flyout-inner > *:nth-child(2){transition-delay:.1s;}
#ncg-nav-root .ncg-menu > li.ncg-open .ncg-flyout-inner > *:nth-child(3){transition-delay:.14s;}
#ncg-nav-root .ncg-menu > li.ncg-open .ncg-flyout-inner > *:nth-child(4){transition-delay:.18s;}
#ncg-nav-root .ncg-menu > li.ncg-open .ncg-flyout-inner > *:nth-child(5){transition-delay:.22s;}

/* Dim */
#ncg-nav-root .ncg-dim{
  position:fixed;inset:0;background:rgba(29,29,31,.32);
  opacity:0;pointer-events:none;transition:opacity .35s;z-index:9980;
  -webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);
}
#ncg-nav-root .ncg-dim.ncg-on{opacity:1;pointer-events:auto;}

/* ---------- HAMBURGER / MOBIL ---------- */
#ncg-nav-root .ncg-burger{display:none;width:44px;height:44px;position:relative;flex-shrink:0;margin-left:6px;}
#ncg-nav-root .ncg-burger span{
  position:absolute;left:12px;width:20px;height:1.6px;background:var(--ncg-ink);
  border-radius:2px;transition:transform .35s var(--ncg-ease),top .35s var(--ncg-ease);
}
#ncg-nav-root .ncg-burger span:nth-child(1){top:18px;}
#ncg-nav-root .ncg-burger span:nth-child(2){top:25px;}
body.ncg-mnav-open #ncg-nav-root .ncg-burger span:nth-child(1){top:21px;transform:rotate(45deg);}
body.ncg-mnav-open #ncg-nav-root .ncg-burger span:nth-child(2){top:21px;transform:rotate(-45deg);}

#ncg-nav-root .ncg-mnav{
  display:none;
  position:fixed;left:0;right:0;bottom:0;top:0; /* top saettes af JS til navens underkant */
  background:#FFFFFF;
  z-index:9985;flex-direction:column;
  opacity:0;transform:translateY(-8px);
  transition:opacity .35s,transform .4s var(--ncg-ease);
  pointer-events:none;
}
body.ncg-mnav-open #ncg-nav-root .ncg-mnav{opacity:1;transform:none;pointer-events:auto;}
body.ncg-mnav-open{overflow:hidden;}
#ncg-nav-root .ncg-mnav-scroll{flex:1;overflow-y:auto;padding:14px 28px 60px;}
#ncg-nav-root .ncg-mitem{border-bottom:1px solid var(--ncg-linje);}
#ncg-nav-root .ncg-mitem > a,
#ncg-nav-root .ncg-mitem > button{font-family:inherit;
  width:100%;display:flex;align-items:center;justify-content:space-between;
  padding:19px 0;font-size:21px;font-weight:600;letter-spacing:-.02em;text-align:left;
  color:var(--ncg-ink);
}
#ncg-nav-root .ncg-chev{
  width:10px;height:10px;border-right:1.8px solid var(--ncg-graa);border-bottom:1.8px solid var(--ncg-graa);
  transform:rotate(45deg);transition:transform .3s var(--ncg-ease);flex-shrink:0;
}
#ncg-nav-root .ncg-mitem.ncg-open .ncg-chev{transform:rotate(225deg);}
#ncg-nav-root .ncg-msub{max-height:0;overflow:hidden;transition:max-height .45s var(--ncg-ease);}
#ncg-nav-root .ncg-mitem.ncg-open .ncg-msub{max-height:600px;}
#ncg-nav-root .ncg-msub-group{padding:2px 0 18px;}
#ncg-nav-root .ncg-msub .ncg-eyebrow{margin:12px 0 8px;}
#ncg-nav-root .ncg-msub a{display:block;padding:9px 0 9px 2px;font-size:16px;font-weight:450;color:#3a3a3c;}
#ncg-nav-root .ncg-msub a:active{color:var(--ncg-blaa);}

@media(max-width:1020px){
  #ncg-nav-root .ncg-menu{display:none;}
  #ncg-nav-root .ncg-tel{display:none;}
  #ncg-nav-root .ncg-burger{display:block;}
  #ncg-nav-root .ncg-mnav{display:flex;}
  #ncg-nav-root .ncg-nav{padding:0 16px;}
}
@media(max-width:400px){
  #ncg-nav-root .ncg-btn{padding:8px 14px;font-size:13.5px;}
  #ncg-nav-root .ncg-logo img{height:32px;}
}

@media(prefers-reduced-motion:reduce){
  #ncg-nav-root *,#ncg-nav-root *::before,#ncg-nav-root *::after{transition-duration:.01ms !important;}
}
